feat: implement full-stack awards module with Filament management, database support, and localization.

This commit is contained in:
Ümit Tunç
2026-05-27 06:32:31 +03:00
parent 05e8059b5d
commit 3c92a81cfe
14 changed files with 1127 additions and 0 deletions
+59
View File
@@ -0,0 +1,59 @@
<?php
namespace App\Models;
use App\Traits\HasTranslations;
use Illuminate\Database\Eloquent\Factories\HasFactory;
use Illuminate\Database\Eloquent\Model;
use Illuminate\Database\Eloquent\SoftDeletes;
class Award extends Model
{
use HasFactory, SoftDeletes, HasTranslations;
protected $fillable = [
'title',
'description',
'issuer',
'award_date',
'image',
'external_link',
'is_featured',
'is_active',
'sort_order',
'category',
];
/**
* @var list<string>
*/
protected $translatable = [
'title',
'description',
'issuer',
];
protected $casts = [
'award_date' => 'date',
'is_featured' => 'boolean',
'is_active' => 'boolean',
'sort_order' => 'integer',
];
public function scopeActive($query)
{
return $query->where('is_active', true);
}
public function scopeFeatured($query)
{
return $query->where('is_featured', true);
}
public function scopeOrdered($query)
{
return $query
->orderBy('sort_order', 'asc')
->orderBy('award_date', 'desc');
}
}