<div class="container-fluid">
    <!-- Header View Only -->
    <div class="d-flex justify-content-between align-items-center mb-4">
        <div>
            <h4 class="mb-0">Kas RT</h4>
            <p class="text-muted mb-0">Laporan Keuangan RT (View Only)</p>
        </div>
        <div class="text-end">
            <small class="text-muted d-block">Saldo Kas Saat Ini</small>
            <h4 class="text-success mb-0">Rp <?php echo number_format($saldo, 0, ',', '.'); ?></h4>
        </div>
    </div>

    <!-- Filter Bulan & Tahun (Warga bisa filter tapi tidak bisa edit) -->
    <div class="card border-0 shadow-sm mb-4" style="border-radius: 12px;">
        <div class="card-body">
            <form method="get" action="<?php echo base_url('kas'); ?>" class="row g-3 align-items-end">
                <div class="col-md-3">
                    <label class="form-label fw-bold">Bulan</label>
                    <select name="bulan" class="form-select">
                        <option value="">Semua Bulan</option>
                        <?php for($i=1; $i<=12; $i++): ?>
                            <option value="<?php echo $i; ?>" <?php echo isset($_GET['bulan']) && $_GET['bulan'] == $i ? 'selected' : ''; ?>>
                                <?php echo date('F', mktime(0,0,0,$i,1)); ?>
                            </option>
                        <?php endfor; ?>
                    </select>
                </div>
                <div class="col-md-3">
                    <label class="form-label fw-bold">Tahun</label>
                    <select name="tahun" class="form-select">
                        <?php for($i=date('Y'); $i>=date('Y')-5; $i--): ?>
                            <option value="<?php echo $i; ?>" <?php echo (isset($_GET['tahun']) ? $_GET['tahun'] : date('Y')) == $i ? 'selected' : ''; ?>>
                                <?php echo $i; ?>
                            </option>
                        <?php endfor; ?>
                    </select>
                </div>
                <div class="col-md-3">
                    <button type="submit" class="btn btn-info">
                        <i class="bi bi-funnel me-2"></i>Filter
                    </button>
                </div>
            </form>
        </div>
    </div>

    <!-- Tabel Detail Kas Warga (View Only dengan Saldo Berjalan) -->
    <div class="card border-0 shadow-sm" style="border-radius: 12px;">
        <div class="card-header bg-white border-0 pt-4 px-4">
            <div class="d-flex justify-content-between align-items-center">
                <h5 class="mb-0">Detail Laporan Kas</h5>
                <span class="badge bg-secondary">View Only</span>
            </div>
        </div>
        <div class="card-body px-4 pb-4">
            <div class="table-responsive">
                <table class="table table-hover" id="tabelKas">
                    <thead class="table-light">
                        <tr>
                            <th width="5%">No</th>
                            <th width="12%">Tanggal</th>
                            <th width="10%">Jenis</th>
                            <th width="15%">Kategori</th>
                            <th width="23%">Keterangan</th>
                            <th width="12%" class="text-end text-success">Pemasukan</th>
                            <th width="12%" class="text-end text-danger">Pengeluaran</th>
                            <th width="11%" class="text-end">Saldo</th>
                        </tr>
                    </thead>
                    <tbody>
                        <?php 
                        $no = 1;
                        $running_saldo = 0;
                        
                        // Hitung saldo awal dari transaksi sebelum periode (jika ada filter)
                        // Untuk sederhana, mulai dari 0 atau ambil dari database
                        
                        if(isset($kas) && is_array($kas) && count($kas) > 0):
                            // Urutkan dari tanggal paling lama ke terbaru untuk saldo berjalan
                            usort($kas, function($a, $b) {
                                return strtotime($a->tanggal) - strtotime($b->tanggal);
                            });
                            
                            foreach($kas as $k): 
                                // Update running saldo
                                if($k->jenis == 'pemasukan') {
                                    $running_saldo += $k->nominal;
                                    $pemasukan = $k->nominal;
                                    $pengeluaran = 0;
                                } else {
                                    $running_saldo -= $k->nominal;
                                    $pemasukan = 0;
                                    $pengeluaran = $k->nominal;
                                }
                        ?>
                        <tr>
                            <td><?php echo $no++; ?></td>
                            <td><?php echo isset($k->tanggal) ? date('d/m/Y', strtotime($k->tanggal)) : '-'; ?></td>
                            <td>
                                <?php if($k->jenis == 'pemasukan'): ?>
                                    <span class="badge bg-success">Pemasukan</span>
                                <?php else: ?>
                                    <span class="badge bg-danger">Pengeluaran</span>
                                <?php endif; ?>
                            </td>
                            <td><?php echo isset($k->kategori) ? $k->kategori : '-'; ?></td>
                            <td><?php echo isset($k->keterangan) ? $k->keterangan : '-'; ?></td>
                            <td class="text-end text-success fw-bold">
                                <?php echo $pemasukan > 0 ? 'Rp ' . number_format($pemasukan, 0, ',', '.') : '-'; ?>
                            </td>
                            <td class="text-end text-danger fw-bold">
                                <?php echo $pengeluaran > 0 ? 'Rp ' . number_format($pengeluaran, 0, ',', '.') : '-'; ?>
                            </td>
                            <td class="text-end fw-bold <?php echo $running_saldo >= 0 ? 'text-success' : 'text-danger'; ?>">
                                Rp <?php echo number_format($running_saldo, 0, ',', '.'); ?>
                            </td>
                        </tr>
                        <?php 
                            endforeach;
                        else:
                        ?>
                        <tr>
                            <td colspan="8" class="text-center py-4 text-muted">
                                <i class="bi bi-bank fs-1 d-block mb-2"></i>
                                Belum ada data transaksi kas
                            </td>
                        </tr>
                        <?php endif; ?>
                    </tbody>
                    <tfoot class="table-light fw-bold">
                        <tr>
                            <td colspan="5" class="text-end">Total:</td>
                            <td class="text-end text-success">
                                Rp <?php 
                                    $total_pemasukan = 0;
                                    $total_pengeluaran = 0;
                                    if(isset($kas) && is_array($kas)) {
                                        foreach($kas as $k) {
                                            if($k->jenis == 'pemasukan') {
                                                $total_pemasukan += $k->nominal;
                                            } else {
                                                $total_pengeluaran += $k->nominal;
                                            }
                                        }
                                    }
                                    echo number_format($total_pemasukan, 0, ',', '.');
                                ?>
                            </td>
                            <td class="text-end text-danger">
                                Rp <?php echo number_format($total_pengeluaran, 0, ',', '.'); ?>
                            </td>
                            <td class="text-end">
                                Rp <?php echo number_format($total_pemasukan - $total_pengeluaran, 0, ',', '.'); ?>
                            </td>
                        </tr>
                    </tfoot>
                </table>
            </div>
        </div>
    </div>
</div>

<script>
$(document).ready(function() {
    var hasData = <?php echo (isset($kas) && count($kas) > 0) ? 'true' : 'false'; ?>;
    
    if(hasData) {
        $('#tabelKas').DataTable({
            responsive: true,
            language: {
                url: '//cdn.datatables.net/plug-ins/1.13.4/i18n/id.json'
            },
            pageLength: 10,
            order: [[1, 'asc']], // Urutkan dari tanggal paling lama untuk saldo berjalan yang benar
            columnDefs: [
                { orderable: false, targets: [0] }
            ]
        });
    }
});
</script>