Merge pull request #8 from LailaWulandarii/development
Development update validation rule and message
This commit is contained in:
commit
9e934a268b
|
|
@ -21,52 +21,4 @@ public function index()
|
||||||
$pesananFoto = BookingFoto::where('status_booking', 'menunggu_verifikasi')->latest()->get();
|
$pesananFoto = BookingFoto::where('status_booking', 'menunggu_verifikasi')->latest()->get();
|
||||||
return view('admin.beranda.index', compact('stat', 'buketToday', 'fotoToday', 'pesananBuket', 'pesananFoto'));
|
return view('admin.beranda.index', compact('stat', 'buketToday', 'fotoToday', 'pesananBuket', 'pesananFoto'));
|
||||||
}
|
}
|
||||||
// public function index()
|
|
||||||
// {
|
|
||||||
// $now = Carbon::now();
|
|
||||||
// $lastMonth = Carbon::now()->subMonth();
|
|
||||||
// $today = Carbon::today();
|
|
||||||
// $getGrowth = function ($current, $previous) {
|
|
||||||
// if ($previous <= 0) return $current > 0 ? 100 : 0;
|
|
||||||
// return round((($current - $previous) / $previous) * 100, 1);
|
|
||||||
// };
|
|
||||||
// $currPendapatan = TransaksiBuket::whereMonth('created_at', $now->month)->whereYear('created_at', $now->year)->where('status_transaksi', 'diterima')->sum('total_bayar') +
|
|
||||||
// BookingFoto::whereMonth('created_at', $now->month)->whereYear('created_at', $now->year)->where('status_booking', 'diterima')->sum('total_bayar');
|
|
||||||
|
|
||||||
// $currMasuk = TransaksiBuket::whereMonth('created_at', $now->month)->whereYear('created_at', $now->year)->count() +
|
|
||||||
// BookingFoto::whereMonth('created_at', $now->month)->whereYear('created_at', $now->year)->count();
|
|
||||||
|
|
||||||
// $currSelesai = TransaksiBuket::whereMonth('created_at', $now->month)->whereYear('created_at', $now->year)->where('status_transaksi', 'selesai')->count() +
|
|
||||||
// BookingFoto::whereMonth('created_at', $now->month)->whereYear('created_at', $now->year)->where('status_booking', 'selesai')->count();
|
|
||||||
|
|
||||||
// $currBatal = TransaksiBuket::whereMonth('created_at', $now->month)->whereYear('created_at', $now->year)->where('status_transaksi', 'ditolak')->count() +
|
|
||||||
// BookingFoto::whereMonth('created_at', $now->month)->whereYear('created_at', $now->year)->where('status_booking', 'ditolak')->count();
|
|
||||||
// $prevPendapatan = TransaksiBuket::whereMonth('created_at', $lastMonth->month)->whereYear('created_at', $lastMonth->year)->where('status_transaksi', 'diterima')->sum('total_bayar') +
|
|
||||||
// BookingFoto::whereMonth('created_at', $lastMonth->month)->whereYear('created_at', $lastMonth->year)->where('status_booking', 'diterima')->sum('total_bayar');
|
|
||||||
|
|
||||||
// $prevMasuk = TransaksiBuket::whereMonth('created_at', $lastMonth->month)->whereYear('created_at', $lastMonth->year)->count() +
|
|
||||||
// BookingFoto::whereMonth('created_at', $lastMonth->month)->whereYear('created_at', $lastMonth->year)->count();
|
|
||||||
|
|
||||||
// $prevSelesai = TransaksiBuket::whereMonth('created_at', $lastMonth->month)->whereYear('created_at', $lastMonth->year)->where('status_transaksi', 'selesai')->count() +
|
|
||||||
// BookingFoto::whereMonth('created_at', $lastMonth->month)->whereYear('created_at', $lastMonth->year)->where('status_booking', 'selesai')->count();
|
|
||||||
|
|
||||||
// $prevBatal = TransaksiBuket::whereMonth('created_at', $lastMonth->month)->whereYear('created_at', $lastMonth->year)->where('status_transaksi', 'ditolak')->count() +
|
|
||||||
// BookingFoto::whereMonth('created_at', $lastMonth->month)->whereYear('created_at', $lastMonth->year)->where('status_booking', 'ditolak')->count();
|
|
||||||
// $stat = [
|
|
||||||
// 'pendapatan' => $currPendapatan,
|
|
||||||
// 'pendapatan_grow' => $getGrowth($currPendapatan, $prevPendapatan),
|
|
||||||
// 'masuk_count' => $currMasuk,
|
|
||||||
// 'masuk_grow' => $getGrowth($currMasuk, $prevMasuk),
|
|
||||||
// 'selesai_count' => $currSelesai,
|
|
||||||
// 'selesai_grow' => $getGrowth($currSelesai, $prevSelesai),
|
|
||||||
// 'batal_count' => $currBatal,
|
|
||||||
// 'batal_grow' => $getGrowth($currBatal, $prevBatal),
|
|
||||||
// ];
|
|
||||||
// $buketToday = TransaksiBuket::with(['pelanggan', 'buket'])->whereDate('tgl_ambil', $today)->where('status_transaksi', 'diterima')->get();
|
|
||||||
// $fotoToday = BookingFoto::with(['pelanggan', 'paketFoto'])->whereDate('tgl_booking', $today)->where('status_booking', 'diterima')->orderBy('jam_mulai', 'asc')->get();
|
|
||||||
// $pesananBuket = TransaksiBuket::with(['pelanggan', 'buket'])->where('status_transaksi', 'menunggu_verifikasi')->latest()->get();
|
|
||||||
// $pesananFoto = BookingFoto::with(['pelanggan', 'paketFoto'])->where('status_booking', 'menunggu_verifikasi')->latest()->get();
|
|
||||||
|
|
||||||
// return view('admin.beranda.index', compact('stat', 'buketToday', 'fotoToday', 'pesananBuket', 'pesananFoto'));
|
|
||||||
// }
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -50,6 +50,6 @@ public function destroy(string $id)
|
||||||
Storage::disk('public')->delete($buket->foto);
|
Storage::disk('public')->delete($buket->foto);
|
||||||
}
|
}
|
||||||
$buket->delete();
|
$buket->delete();
|
||||||
return redirect()->back()->with('success', 'Produk dan foto berhasil dihapus permanen!');
|
return redirect()->back()->with('success', 'Produk buket berhasil dihapus permanen!');
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -16,7 +16,7 @@ public function authorize(): bool
|
||||||
public function rules(): array
|
public function rules(): array
|
||||||
{
|
{
|
||||||
return [
|
return [
|
||||||
'nama' => 'required|string|min:3|max:100||regex:/^[a-zA-Z0-9\s\.,:"-]+$/',
|
'nama' => 'required|string|min:3|max:100|regex:/^[a-zA-Z0-9\s\.\:\(\)\"\-\,]+$/',
|
||||||
'harga' => 'required|numeric|min:0',
|
'harga' => 'required|numeric|min:0',
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
|
@ -24,12 +24,12 @@ public function rules(): array
|
||||||
public function messages(): array
|
public function messages(): array
|
||||||
{
|
{
|
||||||
return [
|
return [
|
||||||
'required' => 'Kolom :attribute wajib diisi.',
|
'required' => ':attribute wajib diisi.',
|
||||||
'numeric' => ':attribute harus berupa angka.',
|
'numeric' => ':attribute harus berupa angka.',
|
||||||
'string' => 'Input :attribute harus berupa teks valid.',
|
'string' => ':attribute harus berupa teks valid.',
|
||||||
'regex' => ':attribute hanya boleh berisi huruf, angka, spasi, titik, koma, tanda hubung dan tanda petik dua.',
|
'regex' => ':attribute hanya boleh berisi huruf, angka, spasi, titik, koma, titik dua, tanda kurung, tanda hubung, dan tanda petik dua.',
|
||||||
'min' => ':attribute minimal harus :min karakter/nilai.',
|
'min' => ':attribute terlalu pendek, minimal :min karakter.',
|
||||||
'max' => ':attribute melebihi batas maksimal :max karakter.',
|
'max' => ':attribute terlalu panjang, maksimal :max karakter.',
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -32,18 +32,18 @@ public function rules(): array
|
||||||
public function messages(): array
|
public function messages(): array
|
||||||
{
|
{
|
||||||
return [
|
return [
|
||||||
'required' => 'Kolom :attribute wajib diisi.',
|
'required' => ':attribute wajib diisi.',
|
||||||
|
'numeric' => ':attribute harus berupa angka.',
|
||||||
|
'string' => ':attribute harus berupa teks valid.',
|
||||||
'unique' => ':attribute sudah terdaftar di sistem, gunakan yang lain.',
|
'unique' => ':attribute sudah terdaftar di sistem, gunakan yang lain.',
|
||||||
'min' => ':attribute minimal harus berisi :min karakter.',
|
'min' => ':attribute terlalu pendek, minimal :min karakter.',
|
||||||
'max' => ':attribute maksimal hanya boleh :max karakter.',
|
'max' => ':attribute terlalu panjang, maksimal :max karakter.',
|
||||||
'numeric' => ':attribute harus berupa angka.',
|
|
||||||
'digits_between' => ':attribute harus berjumlah antara :min sampai :max digit.',
|
'digits_between' => ':attribute harus berjumlah antara :min sampai :max digit.',
|
||||||
'email' => 'Format :attribute tidak valid.',
|
'email' => 'Format :attribute tidak valid.',
|
||||||
'regex' => ':attribute hanya boleh berisi huruf, angka, spasi, titik, koma, tanda hubung dan tanda petik dua.',
|
|
||||||
'in' => ':attribute yang dipilih tidak sesuai pilihan yang tersedia.',
|
'in' => ':attribute yang dipilih tidak sesuai pilihan yang tersedia.',
|
||||||
'nama.regex' => 'Nama hanya boleh berisi huruf dan spasi.',
|
'nama.regex' => 'Nama hanya boleh berisi huruf dan spasi.',
|
||||||
'username.alpha_num' => 'Username hanya boleh berisi huruf dan angka.',
|
'username.alpha_num' => 'Username hanya boleh berisi huruf dan angka.',
|
||||||
'alamat.regex' => 'Alamat hanya boleh berisi huruf, angka, spasi, titik, koma, tanda hubung, dan tanda petik dua.',
|
'alamat.regex' => 'Alamat hanya boleh berisi huruf, angka, spasi, titik, koma, titik dua, tanda hubung, tanda kurung, garis miring, dan tanda petik dua.',
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -18,12 +18,12 @@ public function rules(): array
|
||||||
{
|
{
|
||||||
return [
|
return [
|
||||||
//tmbah requirement
|
//tmbah requirement
|
||||||
'nama' => 'required|string|min:3|max:100|regex:/^[a-zA-Z0-9\s\.,:"-]+$/',
|
'nama' => 'required|string|min:3|max:100|regex:/^[a-zA-Z0-9\s\.\:\(\)\"\-\,]+$/',
|
||||||
'ukuran' => 'required|in:S,M,L',
|
'ukuran' => 'required|in:S,M,L',
|
||||||
'kategori' => 'required|in:single,fresh,premium_fresh,artificial',
|
'kategori' => 'required|in:single,fresh,premium_fresh,artificial',
|
||||||
'harga' => 'required|numeric|min:0',
|
'harga' => 'required|numeric|min:0',
|
||||||
'request_khusus' => 'required|string|min:3|max:100|regex:/^[a-zA-Z0-9\s\.,:"-]+$/',
|
'request_khusus' => 'required|string|min:3|max:100|regex:/^[a-zA-Z0-9\s\.\:\(\)\"\-\,]+$/',
|
||||||
'deskripsi' => 'required|string|min:3|min:100|regex:/^[a-zA-Z0-9\s\.,:"-]+$/',
|
'deskripsi' => 'required|string|min:3|min:170|regex:/^[a-zA-Z0-9\s\.\:\(\)\"\-\,]+$/',
|
||||||
'foto' => $this->isMethod('post')
|
'foto' => $this->isMethod('post')
|
||||||
? 'required|image|mimes:jpeg,png,jpg|max:2048'
|
? 'required|image|mimes:jpeg,png,jpg|max:2048'
|
||||||
: 'nullable|image|mimes:jpeg,png,jpg|max:2048',
|
: 'nullable|image|mimes:jpeg,png,jpg|max:2048',
|
||||||
|
|
@ -33,12 +33,13 @@ public function rules(): array
|
||||||
public function messages(): array
|
public function messages(): array
|
||||||
{
|
{
|
||||||
return [
|
return [
|
||||||
'required' => 'Kolom :attribute tidak boleh kosong.',
|
'required' => ':attribute wajib diisi.',
|
||||||
'string' => 'Input :attribute harus berupa teks valid.',
|
|
||||||
'min' => ':attribute terlalu pendek, minimal harus :min karakter.',
|
|
||||||
'max' => ':attribute melebihi batas, maksimal :max karakter/KB.',
|
|
||||||
'in' => 'Pilihan :attribute tidak sesuai dengan data yang tersedia.',
|
|
||||||
'numeric' => ':attribute harus berupa angka.',
|
'numeric' => ':attribute harus berupa angka.',
|
||||||
|
'string' => ':attribute harus berupa teks valid.',
|
||||||
|
'min' => ':attribute terlalu pendek, minimal :min karakter.',
|
||||||
|
'max' => ':attribute terlalu panjang, maksimal :max karakter.',
|
||||||
|
'in' => 'Pilihan :attribute tidak sesuai dengan data yang tersedia.',
|
||||||
|
'regex' => ':attribute hanya boleh berisi huruf, angka, spasi, titik, koma, titik dua, tanda hubung, tanda kurung, garis miring, dan tanda petik dua.',
|
||||||
'image' => ':attribute harus berupa file gambar (foto).',
|
'image' => ':attribute harus berupa file gambar (foto).',
|
||||||
'mimes' => 'Format :attribute tidak didukung. Gunakan format: jpeg, png, atau jpg.',
|
'mimes' => 'Format :attribute tidak didukung. Gunakan format: jpeg, png, atau jpg.',
|
||||||
'foto.max' => 'Ukuran :attribute terlalu besar, maksimal adalah 2MB.',
|
'foto.max' => 'Ukuran :attribute terlalu besar, maksimal adalah 2MB.',
|
||||||
|
|
|
||||||
|
|
@ -16,10 +16,10 @@ public function authorize(): bool
|
||||||
public function rules(): array
|
public function rules(): array
|
||||||
{
|
{
|
||||||
return [
|
return [
|
||||||
'nama' => 'required|string|min:3|max:100|regex:/^[a-zA-Z0-9\s\.,:"-]+$/',
|
'nama' => 'required|string|min:3|max:50|regex:/^[a-zA-Z0-9\s\.\:\(\)\"\-\,]+$/',
|
||||||
'harga' => 'required|numeric|min:0',
|
'harga' => 'required|numeric|min:0',
|
||||||
'durasi' => 'required|integer|min:0',
|
'durasi' => 'required|integer|min:0',
|
||||||
'deskripsi' => 'required|string|min:10|regex:/^[a-zA-Z0-9\s\.,:"-]+$/',
|
'deskripsi' => 'required|string|min:3|max:170|regex:/^[a-zA-Z0-9\s\.\:\(\)\"\-\,]+$/',
|
||||||
'foto' => $this->isMethod('post')
|
'foto' => $this->isMethod('post')
|
||||||
? 'required|image|mimes:jpeg,png,jpg|max:2048'
|
? 'required|image|mimes:jpeg,png,jpg|max:2048'
|
||||||
: 'nullable|image|mimes:jpeg,png,jpg|max:2048',
|
: 'nullable|image|mimes:jpeg,png,jpg|max:2048',
|
||||||
|
|
@ -29,12 +29,14 @@ public function rules(): array
|
||||||
public function messages(): array
|
public function messages(): array
|
||||||
{
|
{
|
||||||
return [
|
return [
|
||||||
'required' => 'Kolom :attribute wajib diisi.',
|
'required' => ':attribute wajib diisi.',
|
||||||
'string' => 'Input :attribute harus berupa teks valid.',
|
'numeric' => ':attribute harus berupa angka.',
|
||||||
|
'string' => ':attribute harus berupa teks valid.',
|
||||||
'integer' => 'Input :attribute harus berupa angka valid.',
|
'integer' => 'Input :attribute harus berupa angka valid.',
|
||||||
'numeric' => ':attribute harus berupa angka.',
|
'numeric' => ':attribute harus berupa angka.',
|
||||||
'min' => ':attribute minimal harus :min karakter/nilai.',
|
'regex' => ':attribute hanya boleh berisi huruf, angka, spasi, titik, koma, titik dua, tanda hubung, tanda kurung, garis miring, dan tanda petik dua.',
|
||||||
'max' => ':attribute melebihi batas, maksimal :max karakter/KB.',
|
'min' => ':attribute terlalu pendek, minimal :min karakter.',
|
||||||
|
'max' => ':attribute terlalu panjang, maksimal :max karakter.',
|
||||||
'image' => ':attribute harus berupa file gambar (foto).',
|
'image' => ':attribute harus berupa file gambar (foto).',
|
||||||
'mimes' => 'Format :attribute tidak didukung (jpeg, png, jpg).',
|
'mimes' => 'Format :attribute tidak didukung (jpeg, png, jpg).',
|
||||||
'foto.max' => 'Ukuran :attribute maksimal 2MB.',
|
'foto.max' => 'Ukuran :attribute maksimal 2MB.',
|
||||||
|
|
|
||||||
|
|
@ -3,6 +3,7 @@
|
||||||
namespace App\Http\Requests\Admin;
|
namespace App\Http\Requests\Admin;
|
||||||
|
|
||||||
use Illuminate\Foundation\Http\FormRequest;
|
use Illuminate\Foundation\Http\FormRequest;
|
||||||
|
use Illuminate\Validation\Validator;
|
||||||
|
|
||||||
class PasswordRequest extends FormRequest
|
class PasswordRequest extends FormRequest
|
||||||
{
|
{
|
||||||
|
|
@ -17,7 +18,8 @@ public function authorize(): bool
|
||||||
public function rules(): array
|
public function rules(): array
|
||||||
{
|
{
|
||||||
return [
|
return [
|
||||||
'password' => 'required|min:8|confirmed',
|
'password' => 'required|min:8|max:15|confirmed',
|
||||||
|
'password_confirmation' => 'required|same:password',
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -25,8 +27,24 @@ public function messages(): array
|
||||||
{
|
{
|
||||||
return [
|
return [
|
||||||
'required' => 'Kata sandi baru wajib diisi.',
|
'required' => 'Kata sandi baru wajib diisi.',
|
||||||
'min' => 'Kata sandi minimal :min karakter.',
|
'min' => 'Kata sandi terlalu pendek, minimal :min karakter.',
|
||||||
'confirmed' => 'Konfirmasi kata sandi tidak cocok.',
|
'confirmed' => 'Konfirmasi kata sandi tidak cocok.',
|
||||||
|
'password_confirmation.required' => 'Konfirmasi kata sandi wajib diisi.',
|
||||||
|
'password_confirmation.same' => 'Konfirmasi kata sandi tidak cocok.'
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
public function withValidator(Validator $validator)
|
||||||
|
{
|
||||||
|
$validator->after(function ($validator) {
|
||||||
|
if ($validator->errors()->has('password')) {
|
||||||
|
$messages = $validator->errors()->get('password');
|
||||||
|
foreach ($messages as $message) {
|
||||||
|
// Jika pesan error berisi tentang konfirmasi, tambahkan ke field konfirmasi
|
||||||
|
if ($message == 'Konfirmasi kata sandi tidak cocok.') {
|
||||||
|
$validator->errors()->add('password_confirmation', $message);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -20,24 +20,24 @@ public function rules(): array
|
||||||
$userId = Auth::id();
|
$userId = Auth::id();
|
||||||
//tambah validasi
|
//tambah validasi
|
||||||
return [
|
return [
|
||||||
'nama' => 'required|string|min:3|max:100|regex:/^[a-zA-Z\s]+$/',
|
'nama' => 'required|string|min:3|max:30|regex:/^[a-zA-Z\s]+$/',
|
||||||
'username' => 'required|string|alpha_num|max:10|unique:users,username,' . $userId . ',id_user',
|
'username' => 'required|string|alpha_num|min:5|max:10|unique:users,username,' . $userId . ',id_user',
|
||||||
'email' => 'required|email|unique:users,email,' . $userId . ',id_user',
|
'email' => 'required|email|unique:users,email,' . $userId . ',id_user',
|
||||||
'no_wa' => 'nullable|numeric|digits_between:10,15',
|
'no_wa' => 'nullable|numeric|digits_between:10,15',
|
||||||
'alamat' => 'nullable|string|max:200|regex:/^[a-zA-Z0-9\s\.,:"-]+$/',
|
'alamat' => 'nullable|string|min:10|max:150|regex:/^[a-zA-Z0-9\s\.\,\/\-\(\)]+$/',
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
|
||||||
public function messages(): array
|
public function messages(): array
|
||||||
{
|
{
|
||||||
return [
|
return [
|
||||||
'required' => 'Kolom :attribute wajib diisi.',
|
'required' => ':attribute wajib diisi.',
|
||||||
'unique' => ':attribute sudah digunakan.',
|
'unique' => ':attribute sudah digunakan.',
|
||||||
'numeric' => ':attribute harus berupa angka.',
|
'numeric' => ':attribute harus berupa angka.',
|
||||||
'email' => 'Format :attribute tidak valid.',
|
'email' => 'Format :attribute tidak valid.',
|
||||||
'digits_between' => ':attribute harus berjumlah antara 10 sampai 15 digit.',
|
'digits_between' => ':attribute harus berjumlah antara 10 sampai 15 digit.',
|
||||||
'min' => ':attribute minimal harus berisi :min karakter.',
|
'min' => ':attribute terlalu pendek, minimal :min karakter.',
|
||||||
'max' => ':attribute maksimal hanya boleh :max karakter.',
|
'max' => ':attribute terlalu panjang, maksimal :max karakter.',
|
||||||
'nama.regex' => 'Nama hanya boleh berisi huruf dan spasi.',
|
'nama.regex' => 'Nama hanya boleh berisi huruf dan spasi.',
|
||||||
'username.alpha_num' => 'Username hanya boleh berisi huruf dan angka.',
|
'username.alpha_num' => 'Username hanya boleh berisi huruf dan angka.',
|
||||||
'alamat.regex' => 'Alamat hanya boleh berisi huruf, angka, spasi, titik, koma, tanda hubung, dan tanda petik dua.',
|
'alamat.regex' => 'Alamat hanya boleh berisi huruf, angka, spasi, titik, koma, tanda hubung, dan tanda petik dua.',
|
||||||
|
|
|
||||||
|
|
@ -28,9 +28,9 @@ public function messages(): array
|
||||||
return [
|
return [
|
||||||
'required' => 'Kolom :attribute wajib diisi.',
|
'required' => 'Kolom :attribute wajib diisi.',
|
||||||
'image' => ':attribute harus berupa file gambar.',
|
'image' => ':attribute harus berupa file gambar.',
|
||||||
'max' => 'Ukuran :attribute maksimal adalah 2MB.',
|
'min' => ':attribute terlalu pendek, minimal :min karakter.',
|
||||||
|
'max' => ':attribute terlalu panjang, maksimal :max karakter.',
|
||||||
'string' => 'Input :attribute harus berupa teks valid.',
|
'string' => 'Input :attribute harus berupa teks valid.',
|
||||||
'min' => ':attribute terlalu pendek, minimal :min karakter.',
|
|
||||||
'numeric' => ':attribute harus berupa angka.',
|
'numeric' => ':attribute harus berupa angka.',
|
||||||
'digits_between' => ':attribute harus antara :min sampai :max digit.',
|
'digits_between' => ':attribute harus antara :min sampai :max digit.',
|
||||||
'date' => 'Format tanggal pada :attribute tidak valid.',
|
'date' => 'Format tanggal pada :attribute tidak valid.',
|
||||||
|
|
|
||||||
|
|
@ -14,9 +14,8 @@ public function authorize(): bool
|
||||||
public function rules(): array
|
public function rules(): array
|
||||||
{
|
{
|
||||||
return [
|
return [
|
||||||
'id_buket' => 'required|exists:bukets,id_buket', // Tambahan validasi keamanan
|
'id_buket' => 'required|exists:bukets,id_buket',
|
||||||
//tambahan validasi untuk teks aja
|
'nama' => 'required|string|min:3|max:30|regex:/^[a-zA-Z\s]+$/',
|
||||||
'nama' => 'required|string|min:3|max:100|regex:/^[a-zA-Z\s]+$/',
|
|
||||||
'no_wa' => 'required|numeric|digits_between:10,15',
|
'no_wa' => 'required|numeric|digits_between:10,15',
|
||||||
'tgl_ambil' => 'required|date|after_or_equal:today',
|
'tgl_ambil' => 'required|date|after_or_equal:today',
|
||||||
'waktu_ambil' => [
|
'waktu_ambil' => [
|
||||||
|
|
@ -26,16 +25,16 @@ public function rules(): array
|
||||||
'before_or_equal:21:00',
|
'before_or_equal:21:00',
|
||||||
],
|
],
|
||||||
'bukti_bayar' => 'required|image|mimes:jpeg,png,jpg|max:2048',
|
'bukti_bayar' => 'required|image|mimes:jpeg,png,jpg|max:2048',
|
||||||
'request_khusus' => 'nullable|string|max:250',
|
'request_khusus' => 'nullable|string|max:150',
|
||||||
'ucapan' => 'nullable|string|max:100',
|
'ucapan' => 'nullable|string|max:150',
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
|
||||||
public function messages(): array
|
public function messages(): array
|
||||||
{
|
{
|
||||||
return [
|
return [
|
||||||
'required' => 'Kolom :attribute wajib diisi.',
|
'required' => ':attribute harus diisi.',
|
||||||
'string' => 'Input :attribute harus berupa teks valid.',
|
'string' => ':attribute harus berupa teks valid.',
|
||||||
'min' => ':attribute terlalu pendek, minimal :min karakter.',
|
'min' => ':attribute terlalu pendek, minimal :min karakter.',
|
||||||
'max' => ':attribute terlalu panjang, maksimal :max karakter.',
|
'max' => ':attribute terlalu panjang, maksimal :max karakter.',
|
||||||
'numeric' => ':attribute harus berupa angka.',
|
'numeric' => ':attribute harus berupa angka.',
|
||||||
|
|
@ -48,6 +47,7 @@ public function messages(): array
|
||||||
'bukti_bayar.max' => 'Ukuran :attribute maksimal adalah 2MB.',
|
'bukti_bayar.max' => 'Ukuran :attribute maksimal adalah 2MB.',
|
||||||
'waktu_ambil.after_or_equal' => 'Jam operasional kami mulai pukul 09:00.',
|
'waktu_ambil.after_or_equal' => 'Jam operasional kami mulai pukul 09:00.',
|
||||||
'waktu_ambil.before_or_equal' => 'Jam operasional kami berakhir pukul 21:00.',
|
'waktu_ambil.before_or_equal' => 'Jam operasional kami berakhir pukul 21:00.',
|
||||||
|
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -183,6 +183,10 @@ class="form-control @error('password', 'updatePassword') is-invalid @enderror"
|
||||||
id="iconKonfirm"></i>
|
id="iconKonfirm"></i>
|
||||||
</span>
|
</span>
|
||||||
</div>
|
</div>
|
||||||
|
@if ($errors->updatePassword->has('password_confirmation'))
|
||||||
|
<small
|
||||||
|
class="text-danger">{{ $errors->updatePassword->first('password_confirmation') }}</small>
|
||||||
|
@endif
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue