# Implementasi Admin Panel Terpadu (Back-Office CMS) (Milestone 6)

Kita akan membangun CMS (Admin Panel) di atas arsitektur Native PHP MVC. Dengan langkah ini, Anda bisa mengelola seluruh entitas/tabel MySQL pilar peternakan Anda secara praktis melalui layar Browser Web yang terstruktur tanpa perlu tool builder eksternal.

## Proposed Changes

### 1. Struktur Admin Tema (Template)
- Menggunakan Bootstrap 5 Theme (seperti AdminLTE atau SB Admin 2) untuk membentuk *dashboard* responsif.
- Titik akses untuk *Backend CMS* akan bermukim di pintu masuk `/admin/login.php`. Autentikasinya memverifikasi tipe role pengguna dari tabel `ref_roles`.

### 2. Form & DataTables Native
Menciptakan *Controller* dan *Views* untuk mengelola Master Data.

#### [NEW] `app/controllers/admin/FarmController.php` & `app/views/admin/farm/`
- Layar antarmuka untuk mendata master pusat peternakan. Menyediakan fungsi CRUD penuh.

#### [NEW] `app/controllers/admin/CoopController.php` & `app/views/admin/coop/`
- Menu pengaturan Kandang yang terhubung secara relasi dengan Farm dan Tipe Kandang (Memunculkan Dropdown relasi tabel `farms` dan `ref_coop_types`).

#### [NEW] `app/controllers/admin/ItemController.php` & `app/views/admin/item/`
- Manajemen inventaris pakan dan obat.

#### [NEW] `app/controllers/admin/UserController.php` & `app/views/admin/user/`
- Penambahan dan pembatasan SDM peternakan beserta _Role_ nya.

### 3. Keamanan Session dan RBAC
- Menggunakan fungsi bawaan `$_SESSION` di PHP untuk me-lock rute agar hanya yang terautentikasi dan memiliki Role memadai yang bisa masuk menu Admin Panel.

---

## Open Questions

> [!WARNING]
> Untuk antarmuka (UI Template) Admin, apakah Anda sudah memiliki tema Bootstrap HTML spesifik yang ingin diintegrasikan, atau haruskah pembangun sistem menggunakan tema standar minimalis Bootstrap bawaan?

## Verification Plan
1. Membuat menu *Login*.
2. Membangun halaman *Dashboard* dan salah satu menu *Master* (contoh: Farm).
3. Melakukan tes CRUD pada Farm dan melihat langsung perubahannya di DB.
