<?= $this->session->flashdata('pesan'); ?>
<div class="card">
    <div class="card-header d-flex justify-content-between align-items-center w-100">
        <h3 class="card-title mb-1" style="margin-top: 5px;">Halaman Data Diri Santri</h3>
        <div class="ml-auto">
            <a href="<?= base_url('santri/tambah') ?>" class="btn btn-success btn-sm custom-button">
                Tambah Santri
            </a>
            <a href="<?= base_url('santri/print') ?>" class="btn btn-info btn-sm custom-button">
                <i class="fas fa-print"></i> Print
            </a>
            <a href="<?= base_url('santri/pdf') ?>" class="btn btn-success btn-sm custom-button">
                <i class="fas fa-file"></i> Cetak PDF
            </a>
        </div>
    </div>
    <!-- /.card-header -->
    <?php
    $kelas_diniyah = [
        1 => 'Al-Wadhih Banin',
        2 => 'Al-Wadhih Banat',
        3 => 'Al-Jurūmiyyah Banin',
        4 => 'Al-Jurūmiyyah Banat',
        5 => 'Al-Imriti Banin',
        6 => 'Al-Imriti Banat',
        7 => 'Alfiyah Ula Banin',
        8 => 'Alfiyah Ula Banat',
        9 => 'Alfiyah Tsani Banin',
        10 => 'Alfiyah Tsani Banat',
        11 => 'Alfiyah Tsalits Banin',
        12 => 'Alfiyah Tsalits Banat'
    ];
    ?>
    <div class="card-body">
        <table id="tb_santri" class="table table-bordered table-striped">
            <thead>
                <tr class="text-center">
                    <th>No</th>
                    <th>NIS</th>
                    <th>Nama Santri</th>
                    <th>Kelas Diniah</th>
                    <th>Status Santri</th>
                    <th>Kondisi Kesehatan</th>
                    <th>Detail</th>
                    <th>Aksi</th>
                </tr>
            </thead>
            <tbody>
                <?php $no = 1;
                foreach ($santri as $str) : ?>
                    <tr class="text-center">
                        <td><?= $no++ ?></td>
                        <td><?= $str->NIS ?></td>
                        <td><?= $str->nama_santri ?></td>
                        <td><?= $kelas_diniyah[$str->kelas_diniyah] ?? 'Kelas Diniyah Tidak Valid' ?></td>
                        <td><?= $str->status_santri ?></td>
                        <td><?= $str->kondisi_kesehatan ?></td>
                        <td>
                            <button data-toggle="modal" data-target="#view<?= $str->id_santri ?>" class="btn btn-info btn-sm"><i class="fas fa-user"></i></button>
                            <a href="<?= base_url('prestasisantri/view/' . $str->id_santri) ?>" class="btn btn-success btn-sm"><i class="fas fa-award"></i></a>
                            <a href="<?= base_url('pelanggaransantri/view/' . $str->id_santri) ?>" class="btn btn-danger btn-sm"><i class="fas fa-user-xmark"></i></a>
                            <a href="<?= base_url('informasisppsantri/view/' . $str->id_santri) ?>" class="btn btn-success btn-sm"><i class="fas fa-sack-dollar"></i></a>
                        </td>
                        <td>
                            <a href="<?= base_url('walisantri/tambah/' . $str->id_santri) ?>" class="btn btn-success btn-sm custom-btn"><i class="fas fa-plus"></i> Wali Santri</a>
                            <button data-toggle="modal" data-target="#edit<?= $str->id_santri ?>" class="btn btn-warning btn-sm"><i class="fas fa-edit"></i></button>
                            <a href="<?= base_url('santri/delete/' . $str->id_santri) ?>" class="btn btn-danger btn-sm" onclick="return confirm('Apakah anda yakin menghapus data ini?')"><i class="fas fa-trash"></i></a>
                        </td>
                    </tr>
                <?php endforeach ?>
            </tbody>
        </table>
    </div>
</div>

<?php foreach ($santri as $str) { ?>
    <!-- Modal View-->
    <?php
    $kelas_diniyah = [
        1 => "Al-Wadhih Banin",
        2 => "Al-Wadhih Banat",
        3 => "Al-Jurūmiyyah Banin",
        4 => "Al-Jurūmiyyah Banat",
        5 => "Al-'Imriti Banin",
        6 => "Al-'Imriti Banat",
        7 => "Alfiyah Ula Banin",
        8 => "Alfiyah Ula Banat",
        9 => "Alfiyah Tsani Banin",
        10 => "Alfiyah Tsani Banat",
        11 => "Alfiyah Tsalits Banin",
        12 => "Alfiyah Tsalits Banat"
    ];

    $kelas_diniyah = isset($kelas_diniyah[$str->kelas_diniyah]) ? $kelas_diniyah[$str->kelas_diniyah] : '-';
    ?>
    <div class="modal fade" id="view<?= $str->id_santri ?>" tabindex="-1" aria-labelledby="exampleModalLabel" aria-hidden="true">
        <div class="modal-dialog">
            <div class="modal-content">
                <div class="modal-header">
                    <h5 class="modal-title" id="exampleModalLabel">Detail Santri</h5>
                    <button type="button" class="close" data-dismiss="modal" aria-label="Close">
                        <span aria-hidden="true">&times;</span>
                    </button>
                </div>
                <div class="modal-body">
                    <form action="<?= base_url('WaliSantri/view') ?>" method="POST">
                        <div class="form-group">
                            <label>NIS</label>
                            <input type="text" name="NIS" class="form-control" value="<?= $str->NIS ?>" readonly>
                        </div>
                        <div class="form-group">
                            <label>Nama Santri</label>
                            <input type="text" name="nama_santri" class="form-control" value="<?= $str->nama_santri ?>" readonly>
                        </div>
                        <div class="form-group">
                            <label>Kelas Diniah</label>
                            <input type="text" name="kelas_diniyah" class="form-control" value="<?= $kelas_diniyah ?>" readonly>
                        </div>
                        <div class="form-group">
                            <label>Status Santri</label>
                            <input type="text" name="status_santri" class="form-control" value="<?= $str->status_santri ?>" readonly>
                        </div>
                        <div class="form-group">
                            <label>Kondisi Kesehatan</label>
                            <input type="text" name="kondisi_kesehatan" class="form-control" value="<?= $str->kondisi_kesehatan ?>" readonly>
                        </div>
                        <div class="form-group">
                            <label>Tahun Masuk</label>
                            <input type="text" name="tahun_masuk" class="form-control" value="<?= $str->tahun_masuk ?>" readonly>
                        </div>
                        <div class="form-group">
                            <label>Tahun Keluar</label>
                            <input type="text" name="tahun_keluar" class="form-control" value="<?= $str->tahun_keluar ?>" readonly>
                        </div>
                        <div class="form-group">
                            <label>Keterangan Keluar</label>
                            <input type="text" name="keterangan_keluar" class="form-control" value="<?= $str->keterangan_keluar ?>" readonly>
                        </div>
                        <div class="form-group">
                            <label>Tempat Lahir</label>
                            <input type="text" name="tempat_lahir" class="form-control" value="<?= $str->tempat_lahir ?>" readonly>
                        </div>
                        <div class="form-group">
                            <label>Tanggal Lahir</label>
                            <input type="text" id="tanggal_lahir" name="tanggal_lahir" class="form-control"
                                value="<?= date('d/m/Y', strtotime($str->tanggal_lahir)) ?>" readonly>
                        </div>
                        <div class="form-group">
                            <label>Alamat</label>
                            <textarea name="alamat_santri" class="form-control" readonly><?= $str->alamat_santri ?></textarea>
                        </div>
                        <div class="modal-footer">
                            <button type="button" class="btn btn-danger" data-dismiss="modal">Tutup</button>
                        </div>
                    </form>
                </div>
            </div>
        </div>
    </div>
<?php } ?>

<!-- Modal Edit -->
<?php foreach ($santri as $str) {
    $list_kelas_diniyah = [
        1 => 'Al-Wadhih Banin',
        2 => 'Al-Wadhih Banat',
        3 => 'Al-Jurūmiyyah Banin',
        4 => 'Al-Jurūmiyyah Banat',
        5 => 'Al-Imriti Banin',
        6 => 'Al-Imriti Banat',
        7 => 'Alfiyah Ula Banin',
        8 => 'Alfiyah Ula Banat',
        9 => 'Alfiyah Tsani Banin',
        10 => 'Alfiyah Tsani Banat',
        11 => 'Alfiyah Tsalits Banin',
        12 => 'Alfiyah Tsalits Banat'
    ];

    $kelas_terpilih = isset($str->kelas_diniyah) ? $str->kelas_diniyah : set_value('kelas_diniyah');
?>

    <div class="modal fade" id="edit<?= $str->id_santri ?>" tabindex="-1" aria-labelledby="exampleModalLabel" aria-hidden="true">
        <div class="modal-dialog">
            <div class="modal-content">
                <div class="modal-header">
                    <h5 class="modal-title" id="exampleModalLabel">Edit Santri</h5>
                    <button type="button" class="close" data-dismiss="modal" aria-label="Close">
                        <span aria-hidden="true">&times;</span>
                    </button>
                </div>
                <div class="modal-body">
                    <form id="editSantriForm<?= $str->id_santri ?>" action="<?= base_url('santri/edit/' . $str->id_santri) ?>" method="POST">
                        <input type="hidden" name="id_santri" value="<?= $str->id_santri ?>" data-default="<?= $str->id_santri ?>">
                        <div class="form-group">
                            <label>NIS</label>
                            <input type="text" name="NIS" class="form-control" value="<?= $str->NIS ?>">
                            <?= form_error('NIS', '<div class="text-small text-danger">', '</div>'); ?>
                        </div>
                        <div class="form-group">
                            <label>Nama Santri</label>
                            <input type="text" name="nama_santri" class="form-control" value="<?= $str->nama_santri ?>">
                            <?= form_error('nama_santri', '<div class="text-small text-danger">', '</div>'); ?>
                        </div>
                        <?php
                        $kelas_diniyah = isset($str->kelas_diniyah) ? $str->kelas_diniyah : set_value('kelas_diniyah');
                        ?>
                        <div class="form-group">
                            <label>Kelas Diniyah</label>
                            <select class="custom-select" name="kelas_diniyah">
                                <option value="">Pilih Kelas Diniah</option>
                                <?php foreach ($list_kelas_diniyah as $key => $label): ?>
                                    <option value="<?= $key ?>" <?= ($kelas_terpilih == $key) ? 'selected' : '' ?>>
                                        <?= $label ?>
                                    </option>
                                <?php endforeach; ?>
                            </select>

                            <?= form_error('kelas_diniyah', '<div class="text-small text-danger">', '</div>'); ?>
                        </div>
                        <div class="form-group">
                            <label>Status Santri</label>
                            <select name="status_santri" class="form-control">
                                <option value="">-- Pilih Status Santri --</option>
                                <option value="Santri Aktif" <?= ($str->status_santri == 'Santri Aktif') ? 'selected' : '' ?>>Santri Aktif</option>
                                <option value="Alumni" <?= ($str->status_santri == 'Alumni') ? 'selected' : '' ?>>Alumni</option>
                            </select>
                            <?= form_error('keterangan', '<div class="text-small text-danger">', '</div>'); ?>
                        </div>
                        <div class="form-group">
                            <label>Kondisi Kesehatan</label>
                            <select name="kondisi_kesehatan" class="form-control">
                                <option value="">-- Pilih Kondisi Kesehatan --</option>
                                <option value="Dalam Kondisi Sehat" <?= ($str->kondisi_kesehatan == 'Dalam Kondisi Sehat') ? 'selected' : '' ?>>Dalam Kondisi Sehat</option>
                                <option value="Dalam Kondisi Sakit" <?= ($str->kondisi_kesehatan == 'Dalam Kondisi Sakit') ? 'selected' : '' ?>>Dalam Kondisi Sakit</option>
                            </select>
                            <?= form_error('keterangan', '<div class="text-small text-danger">', '</div>'); ?>
                        </div>
                        <div class="form-group">
                            <label>Tahun Masuk</label>
                            <input type="text" name="tahun_masuk" class="form-control" value="<?= $str->tahun_masuk ?>">
                            <?= form_error('tahun_masuk', '<div class="text-small text-danger">', '</div>'); ?>
                        </div>
                        <div class="form-group">
                            <label>Tahun Keluar</label>
                            <input type="text" name="tahun_keluar" class="form-control" value="<?= $str->tahun_keluar ?>">
                        </div>
                        <div class="form-group">
                            <label>Keterangan Keluar</label>
                            <select name="keterangan_keluar" class="form-control">
                                <option value="">-- Pilih Keterangan Keluar --</option>
                                <option value="Lulus MTs" <?= ($str->keterangan_keluar == 'Lulus MTs') ? 'selected' : '' ?>>Lulus MTs</option>
                                <option value="Lulus MAN" <?= ($str->keterangan_keluar == 'Lulus MAN') ? 'selected' : '' ?>>Lulus MAN</option>
                                <option value="Berhenti Atas Pertimbangan Tertentu" <?= ($str->keterangan_keluar == 'Berhenti Atas Pertimbangan Tertentu') ? 'selected' : '' ?>>Berhenti Atas Pertimbangan Tertentu</option>
                            </select>
                            <?= form_error('keterangan', '<div class="text-small text-danger">', '</div>'); ?>
                        </div>
                        <div class="form-group">
                            <label>Tempat Lahir</label>
                            <input type="text" name="tempat_lahir" class="form-control" value="<?= $str->tempat_lahir ?>">
                            <?= form_error('tempat_lahir', '<div class="text-small text-danger">', '</div>'); ?>
                        </div>
                        <div class="form-group">
                            <label>Tanggal Lahir</label>
                            <input type="text" id="tanggal_lahir" name="tanggal_lahir" class="form-control"
                                value="<?= date('d/m/Y', strtotime($str->tanggal_lahir)) ?>">
                            <?= form_error('tanggal_lahir', '<div class="text-small text-danger">', '</div>'); ?>
                        </div>
                        <div class="form-group">
                            <label>Alamat Santri</label>
                            <textarea name="alamat_santri" class="form-control"><?= $str->alamat_santri ?></textarea>
                            <?= form_error('alamat_santri', '<div class="text-small text-danger">', '</div>'); ?>
                        </div>
                        <div class="modal-footer">
                            <button type="submit" class="btn btn-primary btn-sm"><i class="fas fa-save"></i> Simpan </button>
                        </div>
                    </form>
                </div>
            </div>
        </div>
    </div>
<?php } ?>

<script src="https://cdn.jsdelivr.net/npm/flatpickr"></script>
<script>
    flatpickr("#tanggal_lahir", {
        dateFormat: "d/m/Y" // Menampilkan dalam format dd/mm/yyyy
    });
</script>

<style>
    /* CSS untuk mengubah background dan border <th> dan <td> */
    /* Ubah warna border tabel menjadi hijau */
    table.table-bordered {
        border: 2px solid green;
        /* Border luar tabel */
    }

    /* Ubah warna background dan border header tabel */
    table.table-bordered th {
        background-color: #e0f7e0;
        /* Hijau muda untuk header */
        border: 1px solid green;
        /* Warna border hijau */
        color: #333;
        /* Warna teks */
    }

    /* Ubah warna background dan border sel tabel */
    table.table-bordered td {
        background-color: #f0fff0;
        /* Hijau sangat muda untuk sel */
        border: 1px solid green;
        /* Warna border hijau */
        color: #333;
        /* Warna teks */
    }

    .form-control:not([size]):not([multiple]) {
        background-image: none !important;
        /* Menghilangkan panah bawaan Bootstrap */
    }

    .custom-button {
        font-family: inherit;
        /* Mengikuti font dari parent */
        font-size: 0.9rem;
        /* Sesuaikan dengan font pada h3 */
        font-weight: bold;
        /* Jika judul pakai bold, tombol juga dibuat bold */
        text-transform: capitalize;
        /* Mengikuti format teks di judul */
        padding: 6px 13px;
        /* Sesuaikan padding agar proporsional */
    }

    .custom-btn {
        font-family: inherit;
        /* Mengikuti font dari parent */
        font-size: 0.9rem;
        /* Sesuaikan dengan font pada h3 */
        font-weight: bold;
        /* Jika judul pakai bold, tombol juga dibuat bold */
        text-transform: capitalize;
        /* Mengikuti format teks di judul */
        padding: 4px 10px;
        /* Sesuaikan padding agar proporsional */
    }

    /* Override panah sorting ganda */
    /* Hapus panah sorting bawaan template atau Bootstrap */
    table.dataTable thead .sorting:after,
    table.dataTable thead .sorting_asc:after,
    table.dataTable thead .sorting_desc:after {
        display: none !important;
    }
</style>

<!-- DataTables Initialization -->
<script>
    $(document).ready(function() {
        $('#tb_santri').DataTable({
            "paging": true, // Enable pagination
            "lengthChange": true, // Allow user to change number of rows shown
            "searching": true, // Enable search
            "ordering": true, // Enable column sorting
            "info": true, // Show table info
            "autoWidth": false, // Disable auto column width adjustment
        });
    });
    document.addEventListener("DOMContentLoaded", function() {
        document.querySelectorAll(".reset-btn").forEach(button => {
            button.addEventListener("click", function() {
                var id = this.getAttribute("data-id");
                var form = document.getElementById("editSantriForm" + id);

                if (form) {
                    form.reset(); // Reset semua input di form

                    // Reset input dan textarea secara manual jika form reset tidak bekerja
                    form.querySelectorAll("input:not([readonly]), textarea").forEach(input => {
                        input.value = "";
                    });

                    // Kosongkan datepicker juga
                    var dateInput = form.querySelector(".datepicker");
                    if (dateInput) {
                        dateInput.value = "";
                    }

                    // Kembalikan nilai id_santri agar tidak kosong
                    var idSantriInput = form.querySelector("input[name='id_santri']");
                    if (idSantriInput) {
                        idSantriInput.value = idSantriInput.getAttribute("data-default");
                    }
                }
            });
        });
    });
</script>