From 24c95ceb87698b4bb18f84daab12a7422196f897 Mon Sep 17 00:00:00 2001 From: Yoga Pangestu Date: Mon, 19 Jan 2026 11:03:33 +0700 Subject: [PATCH] feat: Integrate Swindon\FilamentHashids trait into multiple models for enhanced ID encoding --- app/Models/Announcement.php | 3 ++- app/Models/AnnouncementMedia.php | 3 ++- app/Models/Category.php | 3 ++- app/Models/CategoryNews.php | 3 +++ app/Models/Classification.php | 3 ++- app/Models/Company.php | 3 ++- app/Models/Contact.php | 3 +++ app/Models/ContentRecap.php | 3 ++- app/Models/Cooperation.php | 3 ++- app/Models/CooperationMedia.php | 3 ++- app/Models/CooperationPayment.php | 3 ++- app/Models/CooperationProposal.php | 3 ++- app/Models/Department.php | 3 ++- app/Models/IssueManagement.php | 3 ++- app/Models/Journalist.php | 3 ++- app/Models/Location.php | 3 ++- app/Models/MediaMonitoring.php | 3 ++- app/Models/MediaMonitoringTheme.php | 3 ++- app/Models/MediaTaskAssignment.php | 3 ++- app/Models/News.php | 3 ++- app/Models/PartnerMedia.php | 3 ++- app/Models/RejectionReason.php | 3 ++- app/Models/Report.php | 3 ++- app/Models/SubClassification.php | 3 ++- app/Models/SubLocation.php | 3 ++- app/Models/TaskAssignment.php | 3 ++- app/Models/Theme.php | 3 ++- app/Models/User.php | 3 ++- app/Models/VerificationRequest.php | 3 ++- app/Models/VerificationReview.php | 3 ++- 30 files changed, 62 insertions(+), 28 deletions(-) diff --git a/app/Models/Announcement.php b/app/Models/Announcement.php index 81fbd52..a0e819c 100644 --- a/app/Models/Announcement.php +++ b/app/Models/Announcement.php @@ -9,10 +9,11 @@ use Illuminate\Database\Eloquent\Model; use Illuminate\Database\Eloquent\Relations\BelongsToMany; use Illuminate\Database\Eloquent\SoftDeletes; +use Swindon\FilamentHashids\Traits\HasHashid; class Announcement extends Model { - use HasFactory, SoftDeletes; + use HasFactory, HasHashid, SoftDeletes; protected $guarded = ['id']; diff --git a/app/Models/AnnouncementMedia.php b/app/Models/AnnouncementMedia.php index 75f8c26..6587216 100644 --- a/app/Models/AnnouncementMedia.php +++ b/app/Models/AnnouncementMedia.php @@ -5,10 +5,11 @@ use Illuminate\Database\Eloquent\Factories\HasFactory; use Illuminate\Database\Eloquent\Model; use Illuminate\Database\Eloquent\Relations\BelongsTo; +use Swindon\FilamentHashids\Traits\HasHashid; class AnnouncementMedia extends Model { - use HasFactory; + use HasFactory, HasHashid; protected $guarded = ['id']; diff --git a/app/Models/Category.php b/app/Models/Category.php index 1f9ed72..d868982 100644 --- a/app/Models/Category.php +++ b/app/Models/Category.php @@ -9,10 +9,11 @@ use Illuminate\Database\Eloquent\Model; use Illuminate\Database\Eloquent\Relations\BelongsToMany; use Illuminate\Database\Eloquent\SoftDeletes; +use Swindon\FilamentHashids\Traits\HasHashid; class Category extends Model { - use HasFactory, SoftDeletes; + use HasFactory, HasHashid, SoftDeletes; protected $guarded = ['id']; diff --git a/app/Models/CategoryNews.php b/app/Models/CategoryNews.php index 6fea5e1..bfe4971 100644 --- a/app/Models/CategoryNews.php +++ b/app/Models/CategoryNews.php @@ -4,9 +4,12 @@ use Illuminate\Database\Eloquent\Model; use Illuminate\Database\Eloquent\Relations\BelongsToMany; +use Swindon\FilamentHashids\Traits\HasHashid; class CategoryNews extends Model { + use HasHashid; + protected $guarded = ['id']; public function category(): BelongsToMany diff --git a/app/Models/Classification.php b/app/Models/Classification.php index c06726c..203680c 100644 --- a/app/Models/Classification.php +++ b/app/Models/Classification.php @@ -9,10 +9,11 @@ use Illuminate\Database\Eloquent\Model; use Illuminate\Database\Eloquent\Relations\HasMany; use Illuminate\Database\Eloquent\SoftDeletes; +use Swindon\FilamentHashids\Traits\HasHashid; class Classification extends Model { - use HasFactory, SoftDeletes; + use HasFactory, HasHashid, SoftDeletes; protected $guarded = ['id']; diff --git a/app/Models/Company.php b/app/Models/Company.php index 12874e0..092b929 100644 --- a/app/Models/Company.php +++ b/app/Models/Company.php @@ -11,10 +11,11 @@ use Illuminate\Database\Eloquent\SoftDeletes; use Spatie\MediaLibrary\HasMedia; use Spatie\MediaLibrary\InteractsWithMedia; +use Swindon\FilamentHashids\Traits\HasHashid; class Company extends Model implements HasMedia { - use HasFactory, InteractsWithMedia, SoftDeletes; + use HasFactory, HasHashid, InteractsWithMedia, SoftDeletes; protected $guarded = ['id']; diff --git a/app/Models/Contact.php b/app/Models/Contact.php index c00fac8..402ace4 100644 --- a/app/Models/Contact.php +++ b/app/Models/Contact.php @@ -4,9 +4,12 @@ use Illuminate\Database\Eloquent\Model; use Illuminate\Database\Eloquent\Relations\BelongsTo; +use Swindon\FilamentHashids\Traits\HasHashid; class Contact extends Model { + use HasHashid; + protected $fillable = [ 'name', 'email', diff --git a/app/Models/ContentRecap.php b/app/Models/ContentRecap.php index f11ffca..283a9e3 100644 --- a/app/Models/ContentRecap.php +++ b/app/Models/ContentRecap.php @@ -9,10 +9,11 @@ use Illuminate\Database\Eloquent\SoftDeletes; use Spatie\MediaLibrary\HasMedia; use Spatie\MediaLibrary\InteractsWithMedia; +use Swindon\FilamentHashids\Traits\HasHashid; class ContentRecap extends Model implements HasMedia { - use HasFactory, InteractsWithMedia, SoftDeletes; + use HasFactory, HasHashid, InteractsWithMedia, SoftDeletes; protected $guarded = ['id']; diff --git a/app/Models/Cooperation.php b/app/Models/Cooperation.php index 3089dcb..d7eaca0 100644 --- a/app/Models/Cooperation.php +++ b/app/Models/Cooperation.php @@ -14,10 +14,11 @@ use Illuminate\Database\Eloquent\SoftDeletes; use Spatie\MediaLibrary\HasMedia; use Spatie\MediaLibrary\InteractsWithMedia; +use Swindon\FilamentHashids\Traits\HasHashid; class Cooperation extends Model implements HasMedia { - use HasFactory, InteractsWithMedia, SoftDeletes; + use HasFactory, HasHashid, InteractsWithMedia, SoftDeletes; protected $guarded = ['id']; diff --git a/app/Models/CooperationMedia.php b/app/Models/CooperationMedia.php index 731e53a..1958761 100644 --- a/app/Models/CooperationMedia.php +++ b/app/Models/CooperationMedia.php @@ -12,10 +12,11 @@ use Illuminate\Database\Eloquent\Relations\Pivot; use Spatie\MediaLibrary\HasMedia; use Spatie\MediaLibrary\InteractsWithMedia; +use Swindon\FilamentHashids\Traits\HasHashid; class CooperationMedia extends Pivot implements HasMedia { - use HasFactory, InteractsWithMedia; + use HasFactory, HasHashid, InteractsWithMedia; protected $table = 'cooperation_media'; diff --git a/app/Models/CooperationPayment.php b/app/Models/CooperationPayment.php index 966c594..467abef 100644 --- a/app/Models/CooperationPayment.php +++ b/app/Models/CooperationPayment.php @@ -7,10 +7,11 @@ use Illuminate\Database\Eloquent\Relations\BelongsTo; use Spatie\MediaLibrary\HasMedia; use Spatie\MediaLibrary\InteractsWithMedia; +use Swindon\FilamentHashids\Traits\HasHashid; class CooperationPayment extends Model implements HasMedia { - use HasFactory, InteractsWithMedia; + use HasFactory, HasHashid, InteractsWithMedia; protected $guarded = ['id']; diff --git a/app/Models/CooperationProposal.php b/app/Models/CooperationProposal.php index ebdd489..e854b6f 100644 --- a/app/Models/CooperationProposal.php +++ b/app/Models/CooperationProposal.php @@ -11,10 +11,11 @@ use Illuminate\Database\Eloquent\Relations\MorphMany; use Spatie\MediaLibrary\HasMedia; use Spatie\MediaLibrary\InteractsWithMedia; +use Swindon\FilamentHashids\Traits\HasHashid; class CooperationProposal extends Model implements HasMedia { - use HasFactory, InteractsWithMedia; + use HasFactory, HasHashid, InteractsWithMedia; protected $guarded = ['id']; diff --git a/app/Models/Department.php b/app/Models/Department.php index f0153b0..436bccf 100644 --- a/app/Models/Department.php +++ b/app/Models/Department.php @@ -6,10 +6,11 @@ use Illuminate\Database\Eloquent\Factories\HasFactory; use Illuminate\Database\Eloquent\Model; use Illuminate\Database\Eloquent\SoftDeletes; +use Swindon\FilamentHashids\Traits\HasHashid; class Department extends Model { - use HasFactory, SoftDeletes; + use HasFactory, HasHashid, SoftDeletes; protected $guarded = ['id']; diff --git a/app/Models/IssueManagement.php b/app/Models/IssueManagement.php index 45d6a52..09dfeff 100644 --- a/app/Models/IssueManagement.php +++ b/app/Models/IssueManagement.php @@ -7,10 +7,11 @@ use Illuminate\Database\Eloquent\Model; use Illuminate\Database\Eloquent\Relations\BelongsTo; use Illuminate\Database\Eloquent\SoftDeletes; +use Swindon\FilamentHashids\Traits\HasHashid; class IssueManagement extends Model { - use HasFactory, HasFactory, SoftDeletes; + use HasFactory, HasHashid, SoftDeletes; protected $guarded = ['id']; diff --git a/app/Models/Journalist.php b/app/Models/Journalist.php index b119332..a6afd14 100644 --- a/app/Models/Journalist.php +++ b/app/Models/Journalist.php @@ -9,10 +9,11 @@ use Illuminate\Database\Eloquent\SoftDeletes; use Spatie\MediaLibrary\HasMedia; use Spatie\MediaLibrary\InteractsWithMedia; +use Swindon\FilamentHashids\Traits\HasHashid; class Journalist extends Model implements HasMedia { - use HasFactory, InteractsWithMedia, SoftDeletes; + use HasFactory, HasHashid, InteractsWithMedia, SoftDeletes; protected $guarded = ['id']; diff --git a/app/Models/Location.php b/app/Models/Location.php index 687fb9f..d3e2feb 100644 --- a/app/Models/Location.php +++ b/app/Models/Location.php @@ -7,10 +7,11 @@ use Illuminate\Database\Eloquent\Model; use Illuminate\Database\Eloquent\Relations\HasMany; use Illuminate\Database\Eloquent\SoftDeletes; +use Swindon\FilamentHashids\Traits\HasHashid; class Location extends Model { - use HasFactory, SoftDeletes; + use HasFactory, HasHashid, SoftDeletes; protected $guarded = ['id']; diff --git a/app/Models/MediaMonitoring.php b/app/Models/MediaMonitoring.php index 1ecd7d6..b118362 100644 --- a/app/Models/MediaMonitoring.php +++ b/app/Models/MediaMonitoring.php @@ -9,10 +9,11 @@ use Illuminate\Database\Eloquent\SoftDeletes; use Spatie\MediaLibrary\HasMedia; use Spatie\MediaLibrary\InteractsWithMedia; +use Swindon\FilamentHashids\Traits\HasHashid; class MediaMonitoring extends Model implements HasMedia { - use HasFactory, InteractsWithMedia, SoftDeletes; + use HasFactory, HasHashid, InteractsWithMedia, SoftDeletes; protected $guarded = ['id']; diff --git a/app/Models/MediaMonitoringTheme.php b/app/Models/MediaMonitoringTheme.php index 39546df..39858ae 100644 --- a/app/Models/MediaMonitoringTheme.php +++ b/app/Models/MediaMonitoringTheme.php @@ -5,10 +5,11 @@ use Illuminate\Database\Eloquent\Factories\HasFactory; use Illuminate\Database\Eloquent\Model; use Illuminate\Database\Eloquent\Relations\BelongsTo; +use Swindon\FilamentHashids\Traits\HasHashid; class MediaMonitoringTheme extends Model { - use HasFactory; + use HasFactory, HasHashid; protected $table = 'media_monitoring_theme'; diff --git a/app/Models/MediaTaskAssignment.php b/app/Models/MediaTaskAssignment.php index 3c4ad6a..e63db0f 100644 --- a/app/Models/MediaTaskAssignment.php +++ b/app/Models/MediaTaskAssignment.php @@ -7,10 +7,11 @@ use Illuminate\Database\Eloquent\Relations\BelongsTo; use Illuminate\Database\Eloquent\Relations\MorphMany; use Illuminate\Database\Eloquent\Relations\Pivot; +use Swindon\FilamentHashids\Traits\HasHashid; class MediaTaskAssignment extends Pivot { - use HasFactory; + use HasFactory, HasHashid; protected $table = 'media_task_assignment'; diff --git a/app/Models/News.php b/app/Models/News.php index 3ed3987..6ca4702 100644 --- a/app/Models/News.php +++ b/app/Models/News.php @@ -15,10 +15,11 @@ use Spatie\Sluggable\HasSlug; use Spatie\Sluggable\SlugOptions; use Spatie\Tags\HasTags; +use Swindon\FilamentHashids\Traits\HasHashid; class News extends Model implements HasMedia { - use HasFactory, HasSlug, HasTags, InteractsWithMedia, SoftDeletes; + use HasFactory, HasHashid, HasSlug, HasTags, InteractsWithMedia, SoftDeletes; protected $guarded = ['id']; diff --git a/app/Models/PartnerMedia.php b/app/Models/PartnerMedia.php index 3a3a45e..53656d4 100644 --- a/app/Models/PartnerMedia.php +++ b/app/Models/PartnerMedia.php @@ -16,10 +16,11 @@ use Illuminate\Database\Eloquent\SoftDeletes; use Spatie\MediaLibrary\HasMedia; use Spatie\MediaLibrary\InteractsWithMedia; +use Swindon\FilamentHashids\Traits\HasHashid; class PartnerMedia extends Model implements HasMedia { - use HasFactory, InteractsWithMedia, SoftDeletes; + use HasFactory, HasHashid, InteractsWithMedia, SoftDeletes; protected $guarded = ['id']; diff --git a/app/Models/RejectionReason.php b/app/Models/RejectionReason.php index 899f228..129988d 100644 --- a/app/Models/RejectionReason.php +++ b/app/Models/RejectionReason.php @@ -5,10 +5,11 @@ use Illuminate\Database\Eloquent\Factories\HasFactory; use Illuminate\Database\Eloquent\Model; use Illuminate\Database\Eloquent\Relations\MorphTo; +use Swindon\FilamentHashids\Traits\HasHashid; class RejectionReason extends Model { - use HasFactory; + use HasFactory, HasHashid; protected $guarded = ['id']; diff --git a/app/Models/Report.php b/app/Models/Report.php index 44a1769..a2350b7 100644 --- a/app/Models/Report.php +++ b/app/Models/Report.php @@ -10,10 +10,11 @@ use Illuminate\Database\Eloquent\SoftDeletes; use Spatie\MediaLibrary\HasMedia; use Spatie\MediaLibrary\InteractsWithMedia; +use Swindon\FilamentHashids\Traits\HasHashid; class Report extends Model implements HasMedia { - use HasFactory, InteractsWithMedia, SoftDeletes; + use HasFactory, HasHashid, InteractsWithMedia, SoftDeletes; protected $guarded = ['id']; diff --git a/app/Models/SubClassification.php b/app/Models/SubClassification.php index 4784aa8..fab5205 100644 --- a/app/Models/SubClassification.php +++ b/app/Models/SubClassification.php @@ -9,10 +9,11 @@ use Illuminate\Database\Eloquent\Model; use Illuminate\Database\Eloquent\Relations\BelongsTo; use Illuminate\Database\Eloquent\SoftDeletes; +use Swindon\FilamentHashids\Traits\HasHashid; class SubClassification extends Model { - use HasFactory, SoftDeletes; + use HasFactory, HasHashid, SoftDeletes; protected $guarded = ['id']; diff --git a/app/Models/SubLocation.php b/app/Models/SubLocation.php index 7683638..c329ae1 100644 --- a/app/Models/SubLocation.php +++ b/app/Models/SubLocation.php @@ -7,10 +7,11 @@ use Illuminate\Database\Eloquent\Model; use Illuminate\Database\Eloquent\Relations\BelongsTo; use Illuminate\Database\Eloquent\SoftDeletes; +use Swindon\FilamentHashids\Traits\HasHashid; class SubLocation extends Model { - use HasFactory, SoftDeletes; + use HasFactory, HasHashid, SoftDeletes; protected $guarded = ['id']; diff --git a/app/Models/TaskAssignment.php b/app/Models/TaskAssignment.php index 6e3f7eb..500e030 100644 --- a/app/Models/TaskAssignment.php +++ b/app/Models/TaskAssignment.php @@ -8,10 +8,11 @@ use Illuminate\Database\Eloquent\Relations\BelongsToMany; use Illuminate\Database\Eloquent\Relations\HasMany; use Illuminate\Database\Eloquent\Relations\MorphMany; +use Swindon\FilamentHashids\Traits\HasHashid; class TaskAssignment extends Model { - use HasFactory; + use HasFactory, HasHashid; protected $guarded = ['id']; diff --git a/app/Models/Theme.php b/app/Models/Theme.php index 4e3340a..817195f 100644 --- a/app/Models/Theme.php +++ b/app/Models/Theme.php @@ -9,10 +9,11 @@ use Illuminate\Database\Eloquent\Model; use Illuminate\Database\Eloquent\Relations\BelongsToMany; use Illuminate\Database\Eloquent\SoftDeletes; +use Swindon\FilamentHashids\Traits\HasHashid; class Theme extends Model { - use HasFactory, SoftDeletes; + use HasFactory, HasHashid, SoftDeletes; protected $guarded = ['id']; diff --git a/app/Models/User.php b/app/Models/User.php index b1e6cbf..fda02ba 100644 --- a/app/Models/User.php +++ b/app/Models/User.php @@ -16,10 +16,11 @@ use Illuminate\Foundation\Auth\User as Authenticatable; use Illuminate\Notifications\Notifiable; use Spatie\Permission\Traits\HasRoles; +use Swindon\FilamentHashids\Traits\HasHashid; class User extends Authenticatable implements FilamentUser, MustVerifyEmail { - use HasFactory, HasRoles, Notifiable, SoftDeletes; + use HasFactory, HasHashid, HasRoles, Notifiable, SoftDeletes; protected $guarded = ['id']; diff --git a/app/Models/VerificationRequest.php b/app/Models/VerificationRequest.php index 6b33322..5005fc7 100644 --- a/app/Models/VerificationRequest.php +++ b/app/Models/VerificationRequest.php @@ -9,10 +9,11 @@ use Illuminate\Database\Eloquent\Relations\BelongsTo; use Illuminate\Database\Eloquent\Relations\HasMany; use Illuminate\Database\Eloquent\SoftDeletes; +use Swindon\FilamentHashids\Traits\HasHashid; class VerificationRequest extends Model { - use SoftDeletes; + use HasHashid, SoftDeletes; protected $guarded = ['id']; diff --git a/app/Models/VerificationReview.php b/app/Models/VerificationReview.php index 1d4d8b1..765f110 100644 --- a/app/Models/VerificationReview.php +++ b/app/Models/VerificationReview.php @@ -8,10 +8,11 @@ use Illuminate\Database\Eloquent\Model; use Illuminate\Database\Eloquent\Relations\BelongsTo; use Illuminate\Database\Eloquent\SoftDeletes; +use Swindon\FilamentHashids\Traits\HasHashid; class VerificationReview extends Model { - use SoftDeletes; + use HasHashid, SoftDeletes; protected $guarded = ['id'];