<?php
include 'koneksi.php';

$search_query = "";
if (isset($_POST['search'])) {
    $search_query = mysqli_real_escape_string($conn, $_POST['search']);
}

$query = "SELECT * FROM pengeluaran 
          WHERE jenis_pengeluaran LIKE '%$search_query%' 
          OR nominal LIKE '%$search_query%' 
          OR tanggal_pengeluaran LIKE '%$search_query%' 
          ORDER BY tanggal_pengeluaran DESC";

$result = mysqli_query($conn, $query);

// Tambah pengeluaran
if (isset($_POST['submit'])) {
    $jenis = $_POST['jenis_pengeluaran'];
    $nominal = $_POST['nominal'];
    $tanggal = $_POST['tanggal_pengeluaran'];

    if (empty($jenis) || empty($nominal) || empty($tanggal)) {
        echo "<script>alert('Semua kolom harus diisi.');</script>";
    } else {
        $insert = mysqli_query($conn, "INSERT INTO pengeluaran (jenis_pengeluaran, nominal, tanggal_pengeluaran) 
                                       VALUES ('$jenis', '$nominal', '$tanggal')");
        if ($insert) {
            echo "<script>alert('Pengeluaran berhasil ditambahkan!'); window.location='?pages=pengeluaran';</script>";
        } else {
            echo "<script>alert('Gagal menambahkan pengeluaran.');</script>";
        }
    }
}

// Edit pengeluaran
if (isset($_POST['update'])) {
    $id = $_POST['id_pengeluaran'];
    $jenis = $_POST['jenis_pengeluaran'];
    $nominal = $_POST['nominal'];
    $tanggal = $_POST['tanggal_pengeluaran'];

    $update = mysqli_query($conn, "UPDATE pengeluaran 
                                   SET jenis_pengeluaran='$jenis', nominal='$nominal', tanggal_pengeluaran='$tanggal' 
                                   WHERE id_pengeluaran='$id'");
    if ($update) {
        echo "<script>alert('Data berhasil diperbarui.'); window.location='?pages=pengeluaran';</script>";
    } else {
        echo "<script>alert('Gagal memperbarui data.');</script>";
    }
}
?>

<main class="main-content position-relative border-radius-lg">
    <div class="container-fluid py-4">
        <div class="header-section d-flex justify-content-between align-items-center">
            <h5 class="page-title text-white">Pengeluaran</h5>
            <button class="btn btn-success-custom" data-bs-toggle="modal" data-bs-target="#addPengeluaranModal">
                <i class="mdi mdi-plus-circle"></i> Tambah Pengeluaran
            </button>
        </div>

        <div class="card shadow-sm rounded-4 mt-3">
            <div class="card-body">
                <div class="table-responsive">
                    <table id="DataTable" class="table table-bordered table-hover">
                        <thead>
                            <tr>
                                <th>No</th>
                                <th>Jenis Pengeluaran</th>
                                <th>Nominal</th>
                                <th>Tanggal</th>
                                <th class="aksi">Aksi</th>
                            </tr>
                        </thead>

                        <tbody>
                            <?php $no = 1;
                            while ($row = mysqli_fetch_assoc($result)): ?>
                                <tr>
                                    <td><?= $no++ ?></td>
                                    <td><?= htmlspecialchars($row['jenis_pengeluaran']) ?></td>
                                    <td>Rp <?= number_format($row['nominal'], 0, ',', '.') ?></td>
                                    <td><?= date('d-m-Y', strtotime($row['tanggal_pengeluaran'])) ?></td>
                                    <td>
                                        <button class="btn btn-warning btn-sm" data-bs-toggle="modal" data-bs-target="#editPengeluaranModal<?= $row['id_pengeluaran'] ?>">Edit</button>
                                    </td>
                                </tr>

                                <!-- Modal Edit -->
                                <div class="modal fade" id="editPengeluaranModal<?= $row['id_pengeluaran'] ?>" tabindex="-1">
                                    <div class="modal-dialog">
                                        <div class="modal-content">
                                            <form method="POST">
                                                <div class="modal-header">
                                                    <h5 class="modal-title">Edit Pengeluaran</h5>
                                                    <button type="button" class="btn-close" data-bs-dismiss="modal"></button>
                                                </div>
                                                <div class="modal-body">
                                                    <input type="hidden" name="id_pengeluaran" value="<?= $row['id_pengeluaran'] ?>">
                                                    <div class="mb-3">
                                                        <label>Jenis Pengeluaran</label>
                                                        <input type="text" name="jenis_pengeluaran" class="form-control" required value="<?= htmlspecialchars($row['jenis_pengeluaran']) ?>">
                                                    </div>
                                                    <div class="mb-3">
                                                        <label>Nominal</label>
                                                        <input type="number" name="nominal" class="form-control" required value="<?= $row['nominal'] ?>">
                                                    </div>
                                                    <div class="mb-3">
                                                        <label>Tanggal</label>
                                                        <input type="date" name="tanggal_pengeluaran" class="form-control" required value="<?= $row['tanggal_pengeluaran'] ?>">
                                                    </div>
                                                </div>
                                                <div class="modal-footer">
                                                    <button type="submit" name="update" class="btn btn-primary">Simpan</button>
                                                    <button type="button" class="btn btn-secondary" data-bs-dismiss="modal">Batal</button>
                                                </div>
                                            </form>
                                        </div>
                                    </div>
                                </div>
                            <?php endwhile; ?>
                        </tbody>
                    </table>
                </div>
            </div>
        </div>

        <!-- Modal Tambah Pengeluaran -->
        <div class="modal fade" id="addPengeluaranModal" tabindex="-1">
            <div class="modal-dialog">
                <div class="modal-content">
                    <form method="POST">
                        <div class="modal-header">
                            <h5 class="modal-title">Tambah Pengeluaran</h5>
                            <button type="button" class="btn-close" data-bs-dismiss="modal"></button>
                        </div>
                        <div class="modal-body">
                            <div class="mb-3">
                                <label>Jenis Pengeluaran</label>
                                <input type="text" name="jenis_pengeluaran" class="form-control" required>
                            </div>
                            <div class="mb-3">
                                <label>Nominal</label>
                                <input type="number" name="nominal" class="form-control" required>
                            </div>
                            <div class="mb-3">
                                <label>Tanggal Pengeluaran</label>
                                <input type="date" name="tanggal_pengeluaran" class="form-control" required>
                            </div>
                        </div>
                        <div class="modal-footer">
                            <button type="submit" name="submit" class="btn btn-success">Simpan</button>
                            <button type="button" class="btn btn-secondary" data-bs-dismiss="modal">Batal</button>
                        </div>
                    </form>
                </div>
            </div>
        </div>
    </div>
</main>