From 877162ea46c5e9ef8e373167a3a7b091a15063d1 Mon Sep 17 00:00:00 2001 From: hildaaaevs <149044919+hildaaaevs@users.noreply.github.com> Date: Wed, 2 Jul 2025 23:38:56 +0700 Subject: [PATCH] tipe data --- app/Filament/Resources/PaketFotoResource.php | 10 +++++++++- app/Filament/Resources/ReservasiiResource.php | 5 +++++ app/Livewire/UploadBuktiPembayaran.php | 8 +++++--- app/Models/Reservasii.php | 2 +- 4 files changed, 20 insertions(+), 5 deletions(-) diff --git a/app/Filament/Resources/PaketFotoResource.php b/app/Filament/Resources/PaketFotoResource.php index a36a468..1cf80fc 100644 --- a/app/Filament/Resources/PaketFotoResource.php +++ b/app/Filament/Resources/PaketFotoResource.php @@ -59,7 +59,15 @@ public static function form(Form $form): Form MarkdownEditor::make('fasilitas') ])->columnSpan(2), Section::make()->schema([ - FileUpload::make('gambar'), + FileUpload::make('gambar') + ->acceptedFileTypes(['image/jpeg', 'image/png', 'image/jpg', 'image/webp']) + ->label('Gambar') + ->required() + ->helperText('Hanya file JPG, JPEG, PNG, atau WEBP yang diperbolehkan.') + ->validationMessages([ + 'mimes' => 'Format file tidak didukung. Hanya JPG, JPEG, PNG, atau WEBP.', + 'mimetypes' => 'Format file tidak didukung. Hanya JPG, JPEG, PNG, atau WEBP.', + ]), Toggle::make('status') ->required() ->default(true), diff --git a/app/Filament/Resources/ReservasiiResource.php b/app/Filament/Resources/ReservasiiResource.php index ab829f4..3f5e338 100644 --- a/app/Filament/Resources/ReservasiiResource.php +++ b/app/Filament/Resources/ReservasiiResource.php @@ -95,6 +95,11 @@ public static function form(Form $form): Form ->label('Bukti Pembayaran') ->image() ->directory('bukti-pembayaran') + ->acceptedFileTypes(['image/jpeg', 'image/png', 'image/jpg', 'image/webp']) + ->helperText('Hanya file JPG, JPEG, PNG, atau WEBP yang diperbolehkan.') + ->validationMessages([ + 'mimes' => 'Format file tidak didukung. Hanya JPG, JPEG, PNG, atau WEBP.', + 'mimetypes' => 'Format file tidak didukung. Hanya JPG, JPEG, PNG, atau WEBP.']) ->visibility('public') ->preserveFilenames() ->downloadable() diff --git a/app/Livewire/UploadBuktiPembayaran.php b/app/Livewire/UploadBuktiPembayaran.php index e541d76..0c603b8 100644 --- a/app/Livewire/UploadBuktiPembayaran.php +++ b/app/Livewire/UploadBuktiPembayaran.php @@ -73,16 +73,18 @@ public function getTimeLeftProperty() public function uploadBuktiPembayaran() { - if ($this->isExpired) { + if ( + $this->isExpired + ) { session()->flash('error', 'Waktu upload bukti pembayaran telah habis.'); return redirect()->route('histori'); } $this->validate([ - 'bukti_pembayaran' => 'required|image|max:2048', // max 2MB + 'bukti_pembayaran' => 'required|mimes:jpg,jpeg,png,webp|max:2048', // max 2MB, hanya gambar tertentu ], [ 'bukti_pembayaran.required' => 'Bukti pembayaran harus diupload', - 'bukti_pembayaran.image' => 'File harus berupa gambar', + 'bukti_pembayaran.mimes' => 'File harus berupa gambar dengan format JPG, JPEG, PNG, atau WEBP. Dokumen tidak diperbolehkan.', 'bukti_pembayaran.max' => 'Ukuran file maksimal 2MB', ]); diff --git a/app/Models/Reservasii.php b/app/Models/Reservasii.php index f877e18..9fba659 100644 --- a/app/Models/Reservasii.php +++ b/app/Models/Reservasii.php @@ -28,7 +28,7 @@ class Reservasii extends Model protected $casts = [ 'tanggal' => 'date', - 'waktu' => 'string', + 'waktu' => 'datetime', 'total' => 'decimal:2' ];