diff --git a/app/Conductors/Conductor.php b/app/Conductors/Conductor.php
index 27d6b40..7750dba 100644
--- a/app/Conductors/Conductor.php
+++ b/app/Conductors/Conductor.php
@@ -591,6 +591,7 @@ class Conductor
$conductor_class = get_called_class();
$conductor = new $conductor_class();
+ $requestIncludes = [];
$modelFields = $conductor->fields(new $conductor->class());
// Limit fields
diff --git a/app/Conductors/MediaConductor.php b/app/Conductors/MediaConductor.php
index b5dd98b..ebabc90 100644
--- a/app/Conductors/MediaConductor.php
+++ b/app/Conductors/MediaConductor.php
@@ -2,6 +2,7 @@
namespace App\Conductors;
+use App\Models\MediaJob;
use App\Models\User;
use Illuminate\Database\Eloquent\Builder;
use Illuminate\Database\Eloquent\Model;
@@ -26,7 +27,7 @@ class MediaConductor extends Conductor
*
* @var string[]
*/
- protected $includes = ['user'];
+ protected $includes = ['user', 'jobs'];
/**
* The default filters to use in a request.
@@ -156,4 +157,9 @@ class MediaConductor extends Conductor
return UserConductor::includeModel(request(), 'user', $user);
}
+
+ public function includeJobs(Model $model) {
+ $jobs = $model->jobs()->select(['id','created_at','updated_at','user_id','status','status_text','progress'])->orderBy('created_at', 'desc')->get();
+ return $jobs;
+ }
}
diff --git a/app/Http/Controllers/Api/MediaController.php b/app/Http/Controllers/Api/MediaController.php
index 4319a41..6fa0484 100644
--- a/app/Http/Controllers/Api/MediaController.php
+++ b/app/Http/Controllers/Api/MediaController.php
@@ -165,19 +165,15 @@ class MediaController extends ApiController
if ($request->has('transform') === true) {
$transform = [];
- foreach ($request->get('transform') as $key => $value) {
+ foreach (explode(',', $request->get('transform', '')) as $value) {
if (is_string($value) === true) {
if (preg_match('/^rotate-(-?\d+)$/', $value, $matches) !== false) {
- unset($transform[$key]);
$transform['rotate'] = $matches[1];
} elseif (preg_match('/^flip-([vh]|vh|hv)$/', $value, $matches) !== false) {
- unset($transform[$key]);
$transform['flip'] = $matches[1];
} elseif (preg_match('/^crop-(\d+)-(\d+)$/', $value, $matches) !== false) {
- unset($transform[$key]);
$transform['crop'] = ['width' => $matches[1], 'height' => $matches[2]];
} elseif (preg_match('/^crop-(\d+)-(\d+)-(\d+)-(\d+)$/', $value, $matches) !== false) {
- unset($transform[$key]);
$transform['crop'] = ['width' => $matches[1], 'height' => $matches[2], 'x' => $matches[3], 'y' => $matches[4]];
}
}
diff --git a/app/Models/Media.php b/app/Models/Media.php
index a462d02..34189c6 100644
--- a/app/Models/Media.php
+++ b/app/Models/Media.php
@@ -12,6 +12,7 @@ use Illuminate\Contracts\Container\BindingResolutionException;
use Illuminate\Database\Eloquent\Factories\HasFactory;
use Illuminate\Database\Eloquent\Model;
use Illuminate\Database\Eloquent\Relations\BelongsTo;
+use Illuminate\Database\Eloquent\Relations\HasMany;
use Illuminate\Foundation\Bus\DispatchesJobs;
use Illuminate\Http\JsonResponse;
use Illuminate\Support\Facades\Cache;
@@ -794,6 +795,7 @@ class Media extends Model
if (strpos($this->mime_type, 'image/') === 0) {
$image = Image::make($filePath);
+ $image->orientate();
$image->resize($thumbnailWidth, $thumbnailHeight, function ($constraint) {
$constraint->aspectRatio();
});
@@ -1034,4 +1036,8 @@ class Media extends Model
// $this->status = "Info: " . $status;
$this->save();
}
+
+ public function jobs(): HasMany {
+ return $this->hasMany(MediaJob::class, 'media_id');
+ }
}
diff --git a/resources/js/components/dialogs/SMDialogMedia.vue b/resources/js/components/dialogs/SMDialogMedia.vue
index b669e11..fa09aa0 100644
--- a/resources/js/components/dialogs/SMDialogMedia.vue
+++ b/resources/js/components/dialogs/SMDialogMedia.vue
@@ -140,24 +140,22 @@
'bg-center',
'bg-no-repeat',
'relative',
- { 'mb-6': showMediaName(item) },
+ 'mb-6',
]"
:style="{
backgroundImage: `url('${mediaGetThumbnail(
item,
)}')`,
- backgroundColor: 'initial',
}">
{{ item.title }}
NONE{{ item.status }}
@@ -257,17 +255,13 @@
- {{
- lastSelected.status.split(":")
- .length > 1
- ? lastSelected.status
- .split(":")[1]
- .trim()
- : lastSelected.status
- }}
+ {{ lastSelected.status }}