- Login
- Register
- Attach files (image)
- Simpan image ke dalam database cukup nama file-nya saja, tidak perlu nama direktori-nya ✔️
- Bisa edit post yang tidak ada password nya dari post lain dengan ganti id nya di inspect element, cek delete nya juga. Perbaiki validasi. ✔️
- Enter di dalam textarea harus terbaca dan tersimpan di database sebagai baris baru ✔️
- Tampilkan pesan error pada saat password tidak valid ✔️
- Gunakan default picture pada form edit, jika bulletin tidak memiliki picture ✔️
- Tambahkan validasi password (bukan penggantian password) pada saat akan submit pada form edit ✔️
- Pada register confirmation, tampilkan plain password bukan hasil hashing ✔️
- User yang belum verified tidak dapat melakukan post bulletin ✔️
- Jangan tampilkan input password pada form edit jika user sudah login (+verified) ✔️
- Login user validation agar tidak bisa melakukan update/delete message user lain (dari inspect element) ✔️
- Gunakan html5 standart structure ✔️
- Rapikan atribute html pada blade ✔️
is_null()
vsisset()
✔️
- Data yang dapat dikirim dari controller jangan ditempatkan di blade ✔️
- Elemen hasil
foreach()
lebih mudah dibaca dan lebih efisien jika langsung digunakan tanpa disimpan ke variable ✔️ - Jangan mengulang banyak kode (tag html) pada blade, manfaatkan pengkondisian ✔️
- Jangan append nama path image dengan string di blade ✔️
- Jangan explode DateTime pada field created_at, gunakan DateTime format ✔️
- Gunakan method
hasFile()
agar safety jika seandainya file tidak ada ✔️ - Tahun copyright dengan function
date('Y')
✔️ - Efisiensi penggunaan query pada model ✔️
- Gunakan
hasFile()
untuk mengecek apakah input memiliki file ✔️ - Jangan assign FK (Foreign Key) secara hardcode, gunakan method
associate()
✔️ - Gunakan method
destroy()
untuk delete model berdasarkan id, dan delete image jadikan methoddeleteImages()
--- DRY ✔️ - Berikan action
error
response AJAX ✔️ - Sederhanakan validasi isMember ✔️
- Operator
==
dijadikan===
✔️ - Penamaan variable buat lebih jelas/eksplisit, seperti
$emailVerifiedNull
jadi$isEmailVerified
✔️
- Bedakan controller login member dan admin ✔️
- Perbaiki flow AJAX validasi password ✔️
- Bedakan routes member (web) dan admin - (RouteServiceProvider.php) ✔️
- Terapkan Route::resources ✔️
- Coba terapkan authentication dengan Laravel Breeze