feat(location): perbaiki middleware auth dan optimalkan metode controllers

- **Middleware Auth**:
  - Mengganti penanganan middleware auth menggunakan `this->middleware('auth')` pada semua controller.
  - Menambahkan middleware closure untuk menginisialisasi properti user dengan `Auth::user()` setelah auth diverifikasi.

- **Controller Updates**:
  - **CitiesController**:
    - Menambahkan variabel `$provinces` untuk mendapatkan semua data provinsi.
    - Menambahkan data `$provinces` ke dalam view `location::cities.index`.
  - **DistrictsController**:
    - Menambahkan variabel `$provinces` untuk mendukung akses data provinsi dalam view.
    - Menyertakan data provinsi ke dalam view `location::districts.index`.
  - **ProvincesController** dan **VillagesController**:
    - Penyesuaian middleware auth sama seperti controller lainnya. Tidak ada perubahan pada struktur utama lainnya.

- **Seeder Optimization**:
  - Menghapus metode `crudActions` dalam `PermissionSeeder` yang sebelumnya menghasilkan daftar tindakan CRUD.
  - Mengurangi redundansi kode seeding dengan langsung membuat grup permission tanpa tindakan tambahan.
  - Membersihkan logika tambahan terkait CRUD actions yang tidak dipakai.
This commit is contained in:
Daeng Deni Mardaeni
2025-06-22 20:51:20 +07:00
parent 53a2c3a38e
commit d8767174ca
5 changed files with 38 additions and 26 deletions

View File

@@ -18,7 +18,14 @@ class CitiesController extends Controller
public function __construct()
{
$this->user = Auth::guard('web')->user();
// Mengatur middleware auth
$this->middleware('auth');
// Mengatur user setelah middleware auth dijalankan
$this->middleware(function ($request, $next) {
$this->user = Auth::user();
return $next($request);
});
}
public function index(){
@@ -26,7 +33,9 @@ class CitiesController extends Controller
abort(403, 'Sorry! You are not allowed to view cities.');
}
return view('location::cities.index');
$provinces = Province::all();
return view('location::cities.index', compact('provinces'));
}
public function create(){

View File

@@ -19,15 +19,22 @@ class DistrictsController extends Controller
public function __construct()
{
$this->user = Auth::guard('web')->user();
// Mengatur middleware auth
$this->middleware('auth');
// Mengatur user setelah middleware auth dijalankan
$this->middleware(function ($request, $next) {
$this->user = Auth::user();
return $next($request);
});
}
public function index(){
if (is_null($this->user) || !$this->user->can('location.read')) {
abort(403, 'Sorry! You are not allowed to view districts.');
}
return view('location::districts.index');
$provinces = Province::all();
return view('location::districts.index', compact('provinces'));
}
public function create(){

View File

@@ -16,7 +16,14 @@ class ProvincesController extends Controller
public function __construct()
{
$this->user = Auth::guard('web')->user();
// Mengatur middleware auth
$this->middleware('auth');
// Mengatur user setelah middleware auth dijalankan
$this->middleware(function ($request, $next) {
$this->user = Auth::user();
return $next($request);
});
}
public function index(){

View File

@@ -20,7 +20,14 @@
public function __construct()
{
$this->user = Auth::guard('web')->user();
// Mengatur middleware auth
$this->middleware('auth');
// Mengatur user setelah middleware auth dijalankan
$this->middleware(function ($request, $next) {
$this->user = Auth::user();
return $next($request);
});
}
/**