From 32e2dcf34705089a4c981d47b1555a621e21325c Mon Sep 17 00:00:00 2001 From: Deon George Date: Mon, 16 Sep 2024 23:26:54 +1000 Subject: [PATCH] Refactor Catalog Model --- app/Models/Abstracted/Catalog.php | 40 ++++++++++--------------------- 1 file changed, 12 insertions(+), 28 deletions(-) diff --git a/app/Models/Abstracted/Catalog.php b/app/Models/Abstracted/Catalog.php index b5ea920..d6f180e 100644 --- a/app/Models/Abstracted/Catalog.php +++ b/app/Models/Abstracted/Catalog.php @@ -101,7 +101,8 @@ abstract class Catalog extends Model $query->where('id','<>',$this->attributes['id']); // Skip ignore dups - $query->where(fn($q)=>$q->whereNull('ignore_duplicate')->orWhere('ignore_duplicate',FALSE)); + $query->where(fn($q)=>$q->whereNull('ignore_duplicate') + ->orWhere('ignore_duplicate',FALSE)); // Exclude those marked as remove $query->where(fn($q)=>$q->where('remove','<>',TRUE)); @@ -113,16 +114,18 @@ abstract class Catalog extends Model // Where the signature is the same ->orWhere(function($q) { // Or they have the same time taken with the same camera - if ($this->attributes['created'] AND $this->software_id) { - $q->where(fn($q)=>$q->where('created','=',$this->attributes['created'])->orWhere('created_manual','=',$this->attributes['created'])); + if ($this->attributes['created'] && $this->software_id) { + $q->where(fn($q)=>$q->where('created','=',$this->attributes['created']) + ->orWhere('created_manual','=',$this->attributes['created'])); if (static::$includeSubSecTime) $q->where('subsectime','=',Arr::get($this->attributes,'subsectime')); $q->where('software_id','=',$this->attributes['software_id']); - } elseif ($this->attributes['created_manual'] AND $this->software_id) { - $q->where(fn($q)=>$q->where('created','=',$this->attributes['created_manual'])->orWhere('created_manual','=',$this->attributes['created_manual'])); + } elseif ($this->attributes['created_manual'] && $this->software_id) { + $q->where(fn($q)=>$q->where('created','=',$this->attributes['created_manual']) + ->orWhere('created_manual','=',$this->attributes['created_manual'])); if (static::$includeSubSecTime) $q->where('subsectime','=',Arr::get($this->attributes,'subsectime')); @@ -364,15 +367,6 @@ abstract class Catalog extends Model return sprintf('',$name,$id,$value ? ' checked="checked"' : ''); } - /** - * Get ID Info link - * @deprecated use a component - */ - protected function HTMLLinkAttribute($id,$url) - { - return sprintf('%s',url($url,$id),$id,$id); - } - /** * Set values from the media object * @@ -424,6 +418,8 @@ abstract class Catalog extends Model $this->software_id = $so->id; + break; + case 'subsectime': $this->subsectime = $this->getObjectOriginal($item); break; @@ -479,7 +475,7 @@ abstract class Catalog extends Model public function isMoveableReason(): ?string { - return isset($this->move_reason) ? $this->move_reason : NULL; + return $this->move_reason ?? NULL; } /** @@ -564,20 +560,8 @@ abstract class Catalog extends Model return $value ? 'TRUE' : 'FALSE'; } - /** - * @todo Check if this is redundant - * - * @param bool $includeme - * @return mixed - */ - private function list_duplicate($includeme=FALSE) - { - return $this->list_duplicates($includeme)->pluck('id'); - } - /** * Find duplicate images based on some attributes of the current image - * @deprecate Use static::duplicates() */ private function list_duplicates($includeme=FALSE) { @@ -606,7 +590,7 @@ abstract class Catalog extends Model { $query->where('date_created','=',$this->date_created ? $this->date_created : NULL); if (Schema::hasColumn($this->getTable(),'subsectime')) - $query->where('subsectime','=',$this->subsectime ? $this->subsectime : NULL); + $query->where('subsectime','=',$this->subsectime ?: NULL); if (! is_null($this->model)) $query->where('model','=',$this->model);