===========================================================
  APLIKASI BELAJAR PPPK - ADMINISTRASI PERKANTORAN
  (Sekolah Rakyat Kementerian Sosial 2026)
===========================================================

Aplikasi web sederhana berbasis PHP + MySQL (XAMPP) untuk
belajar materi & latihan soal PPPK, dengan sistem FORMASI,
login admin/member, ranking, dan pembahasan dari admin.

-----------------------------------------------------------
CARA MENJALANKAN
-----------------------------------------------------------
1. Install & buka XAMPP, klik START pada Apache dan MySQL.
2. Salin folder "app_pppk" ke: C:\xampp\htdocs\
3. Buka browser: http://localhost/app_pppk/
4. Database & tabel dibuat OTOMATIS saat pertama dibuka.
   (Materi, soal, dan 1 formasi default ikut terisi otomatis.)

Opsional - import manual via phpMyAdmin:
   buka http://localhost/phpmyadmin > pilih/ buat db "pppk_app"
   > tab Import > pilih file "database.sql" > Go.

-----------------------------------------------------------
AKUN DEFAULT
-----------------------------------------------------------
- Admin  : username = admin   | password = admin123
- Member : username = member  | password = member123 (berlaku 30 hari)

-----------------------------------------------------------
KONSEP FORMASI (BARU)
-----------------------------------------------------------
- Admin membuat FORMASI lewat menu "Kelola Formasi".
  Tiap formasi memuat: Nama jabatan, Instansi, Kualifikasi
  pendidikan, dan deskripsi.
  Contoh default: "Operator Pelayanan Operasional
  (Administrasi Perkantoran)" - Kemensos/Sekolah Rakyat - SLTA.
- Calon member memilih FORMASI saat MENDAFTAR (sebelum login)
  di halaman register.php. Instansi & kualifikasi otomatis
  mengikuti formasi yang dipilih.
- Materi & Soal diberi label formasi oleh admin. Setiap member
  hanya melihat materi & soal SESUAI FORMASInya.
- Ranking ditampilkan per formasi.

-----------------------------------------------------------
FITUR
-----------------------------------------------------------
Member:
  - Beranda, Materi (per formasi, langkah demi langkah),
    Latihan Soal (hasil masuk ranking), Ranking + riwayat,
    Unduh PDF.
Admin:
  - Kelola Formasi (CRUD)
  - Kelola Materi (CRUD + lampiran PDF, pilih formasi)
  - Kelola Soal (CRUD soal, jawaban, pembahasan, pilih formasi)
  - Upload PDF
  - Kelola Member (CRUD akun, peran, masa berlaku, formasi)

-----------------------------------------------------------
STRUKTUR FILE
-----------------------------------------------------------
  config.php          - konfigurasi, header/footer, navigasi
  db.php              - koneksi & pembuatan tabel + seed
  auth.php            - login/daftar, kontrol akses, formasi
  login.php           - halaman masuk
  register.php        - daftar member + pilih formasi
  logout.php          - keluar
  index.php           - beranda / dashboard
  materi.php          - baca materi (per formasi)
  soal.php            - latihan soal (per formasi) + simpan nilai
  ranking.php         - papan peringkat + riwayat
  download.php        - daftar & unduh PDF
  kelola_formasi.php  - CRUD formasi (admin)
  kelola.php          - CRUD materi (admin)
  kelola_soal.php     - CRUD soal & pembahasan (admin)
  kelola_user.php     - CRUD member (admin)
  upload.php          - upload PDF (admin)
  data.php            - sumber materi & soal awal (seed)
  database.sql        - skema untuk import phpMyAdmin
  assets/style.css    - tampilan (responsif mobile)
  uploads/            - folder berkas PDF

Tabel database: formasi, materi, users, soal, hasil.

Catatan: materi/soal adalah bahan latihan, BUKAN soal resmi.


=== PEMBARUAN: Paket Free vs Reguler (All Akses) ===
Setiap member baru mendaftar sebagai paket FREE dengan batas (diatur admin di menu Pengaturan):
- Baca materi: maksimal 5 halaman per hari. Halaman ke-6 dst. terbuka otomatis besok (5 lagi per hari, kumulatif).
- Latihan soal: 5 soal terakhir terkunci (tidak bisa dijawab) dan tidak dihitung pada nilai.
- Unduh PDF: maksimal 5 file.
Member REGULER (All Akses) bebas tanpa batas.

Upgrade:
- Member klik menu "Upgrade" lalu "Ajukan Upgrade" (mengirim permintaan ke admin).
- Admin membuka "Kelola Member", melihat tanda "minta upgrade", lalu klik "Upgrade" untuk menjadikan Reguler (atau "Free" untuk menurunkan).
- Admin juga bisa mengubah paket langsung pada form Edit member.

Pengaturan limit:
- Menu "Pengaturan" (admin) untuk mengubah angka 5 halaman/5 soal/5 file sesuai kebutuhan.

Akun default: admin/admin123 (Reguler), member/member123 (Free, untuk uji coba batas).
