<?php namespace App\Controllers;
use App\Models\PrestasiModel;

class Kantor extends BaseController {
    
    protected $prestasiModel;

    public function __construct() {
        $this->prestasiModel = new PrestasiModel();
    }

    public function dashboard() {
        // Gabungkan tabel prestasi dengan nama madrasah pengirim
        $data['dokumen_masuk'] = $this->prestasiModel
                                ->select('prestasi.*, users.nama_instansi')
                                ->join('users', 'users.id = prestasi.id_madrasah')
                                ->orderBy('prestasi.created_at', 'DESC')
                                ->findAll();
        return view('kantor/dashboard', $data);
    }

    public function proses_validasi($id) {
        // Ambil keputusan dari tombol frontend (valid / revisi)
        $keputusan = $this->request->getPost('keputusan');
        
        $this->prestasiModel->update($id, [
            'status_verifikasi' => esc($keputusan),
            'diverifikasi_oleh' => session()->get('user_id')
        ]);

        return redirect()->to('/kantor/dashboard')->with('success', 'Dokumen berhasil diproses.');
    }

    public function cetak_surat($id) {
        $data['siswa'] = $this->prestasiModel
                            ->select('prestasi.*, users.nama_instansi')
                            ->join('users', 'users.id = prestasi.id_madrasah')
                            ->find($id);

        if ($data['siswa']['status_verifikasi'] !== 'valid') {
            die("Error: Dokumen belum disahkan. Proses cetak dibatalkan.");
        }

        return view('cetak_surat', $data);
    }
}