<?php

namespace App\Http\Controllers;

use Illuminate\Http\Request;
use Illuminate\Support\Facades\DB;

class InformasiPublikController extends Controller
{
    public function index(Request $request)
    {
        $kategori = $request->get('kategori');
        $search = $request->get('search');

        // Ambil data informasi publik dari database
        $query = DB::table('informasi_publik')
            ->join('kategori_informasi', 'informasi_publik.kategori_id', '=', 'kategori_informasi.id')
            ->select(
                'informasi_publik.id',
                'informasi_publik.judul',
                'informasi_publik.ringkasan',
                'informasi_publik.tahun',
                'informasi_publik.file_name as file',
                'kategori_informasi.nama as kategori',
                'kategori_informasi.warna as kategori_warna'
            )
            ->where('informasi_publik.is_published', true)
            ->orderBy('informasi_publik.created_at', 'desc');

        // Filter by kategori
        if ($kategori) {
            $query->where('kategori_informasi.nama', $kategori);
        }

        // Filter by search
        if ($search) {
            $query->where(function($q) use ($search) {
                $q->where('informasi_publik.judul', 'like', "%{$search}%")
                  ->orWhere('informasi_publik.ringkasan', 'like', "%{$search}%");
            });
        }

        $informasi = $query->get();

        // Ambil daftar kategori dari database
        $kategoris = DB::table('kategori_informasi')
            ->pluck('nama')
            ->toArray();

        return view('ppid.informasi.index', compact('informasi', 'kategoris', 'kategori', 'search'));
    }
}