PATH:
home
/
rwabteecom
/
project_11
/
app
/
Models
/
Editing: GeneralSetting.php
<?php namespace App\Models; use App\Enums\GeneralSettingEnum; use Cache; use Illuminate\Database\Eloquent\Casts\Attribute; use Illuminate\Database\Eloquent\Model; use Spatie\MediaLibrary\HasMedia; use Spatie\MediaLibrary\InteractsWithMedia; use Spatie\Translatable\HasTranslations; class GeneralSetting extends Model implements HasMedia { use InteractsWithMedia, HasTranslations; public array $translatable = ["title", "description", "address"]; public function registerMediaCollections(): void { $this->addMediaCollection(GeneralSettingEnum::LOGO->value)->singleFile(); $this->addMediaCollection(GeneralSettingEnum::DEFAULT_USER_IMAGE->value)->singleFile(); } public function logo(): Attribute { return Attribute::get(function () { return $this->getFirstMediaUrl(GeneralSettingEnum::LOGO->value); }); } protected static function boot(): void { parent::boot(); parent::updating(function () { Cache::forget("gs"); }); } public function defaultUserImage(): Attribute { return Attribute::get(function () { return $this->getFirstMediaUrl(GeneralSettingEnum::DEFAULT_USER_IMAGE->value); }); } }
SAVE
CANCEL