????????????????????
??????????????????
ÿØÿà
 JFIF      ÿÛ C      


!"$"$ÿÛ C    
ÿÂ p 
" ÿÄ     
         ÿÄ             ÿÚ 
   ÕÔË®

(%	aA*‚XYD¡(J„¡E¢RE,P€XYae )(E¤²€B¤R¥	BQ¤¢ X«)X…€¤   @  

adadasdasdasasdasdas


.....................................................................................................................................????????????????????
??????????????????
ÿØÿà
 JFIF      ÿÛ C      


!"$"$ÿÛ C    
ÿÂ p 
" ÿÄ     
         ÿÄ             ÿÚ 
   ÕÔË®

(%	aA*‚XYD¡(J„¡E¢RE,P€XYae )(E¤²€B¤R¥	BQ¤¢ X«)X…€¤   @  

adadasdasdasasdasdas


.....................................................................................................................................<?php
include('session.php');
include 'connection.php';
 
// Handle Delete Request
if (isset($_GET['delete'])) {
    $id = intval($_GET['delete']);
    $conn->query("DELETE FROM enquiries WHERE id = $id");
    echo "<script>alert('Record deleted successfully'); window.location='enquiry_list.php';</script>";
}

// Fetch All Records
$result = $conn->query("SELECT * FROM enquiries ORDER BY created_at DESC");
?>

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="utf-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1">
    <title>Fee Report |Xcel Training Institute</title>
    <!-- Favicon icon -->
    <link rel="icon" type="image/png" href="../images/logo-wide.png">
    <!-- Base Styling  -->
    <link rel="stylesheet" href="assets/main/css/fonts.css">
    <link rel="stylesheet" href="assets/main/css/style.css">
    <script src="https://code.jquery.com/jquery-3.6.4.min.js" integrity="sha256-oP6HI9z1XaZNBrJURtCoUT5SUnxFr8s3BzRl+cbzUq8=" crossorigin="anonymous"></script>
    <style>
        body {
            background-color: #f8f9fa;
        }
        .container {
            margin-top: 50px;
        }
        table {
            background-color: white;
            box-shadow: 0 0 10px rgba(0,0,0,0.1);
        }
        h2 {
            color: #333;
            margin-bottom: 25px;
        }
        .btn-delete {
            color: white;
            background-color: #dc3545;
        }
        .btn-delete:hover {
            background-color: #b02a37;
        }
    </style>
</head>

<body>
    <div id="main-wrapper" class="show">

        <?php include "sidebar.php"; ?>
        <?php include "header.php"; ?>

        <div class="content-body">
            <div class="warper container-fluid">
                <div class="new-patients main_container">
                    
                    <div class="row">
                       <div class="container">
    <h2 class="text-center">Admission Enquiry List</h2>

    <table class="table table-bordered table-striped table-hover align-middle">
        <thead class="table-dark">
            <tr>
                <th>ID</th>
                <th>Name</th>
                <th>Mobile</th>
                <th>Course</th>
                <th>Date & Time</th>
                <th>Actions</th>
            </tr>
        </thead>
        <tbody>
            <?php if ($result->num_rows > 0): ?>
                <?php while($row = $result->fetch_assoc()): ?>
                    <tr>
                        <td><?= $row['id'] ?></td>
                        <td><?= htmlspecialchars($row['name']) ?></td>
                        <td><?= htmlspecialchars($row['mobile']) ?></td>
                        <td><?= htmlspecialchars($row['course']) ?></td>
                        <td><?= date("d/m/Y h:i A", strtotime($row['created_at'])) ?></td>
                        <td>
                            <a href="enquiry_edit.php?id=<?= $row['id'] ?>" class="btn btn-sm btn-primary">Edit</a>
                            <a href="?delete=<?= $row['id'] ?>" class="btn btn-sm btn-delete" onclick="return confirm('Are you sure you want to delete this record?');">Delete</a>
                        </td>
                    </tr>
                <?php endwhile; ?>
            <?php else: ?>
                <tr><td colspan="6" class="text-center text-muted">No enquiries found.</td></tr>
            <?php endif; ?>
        </tbody>
    </table>
</div>
                    </div>
                    
                </div>
            </div>
        </div>
        <!-- End section content -->

        <?php include('footer.php'); ?>
    </div>

    <!-- Student Details Modal -->
    <div id="studentDetailsModal" class="modal">
        <div class="modal-content">
            <span class="close">&times;</span>
            <h2 id="modalTitle">Student Details</h2>
            <div id="modalBody">
                <!-- Content will be loaded here -->
            </div>
        </div>
    </div>

    <script>
    // Modal functionality
    var modal = document.getElementById("studentDetailsModal");
    var span = document.getElementsByClassName("close")[0];

    span.onclick = function() {
        modal.style.display = "none";
    }

    window.onclick = function(event) {
        if (event.target == modal) {
            modal.style.display = "none";
        }
    }

    // Toggle fee status via AJAX (Approved <-> Pending)
    function toggleFeeStatus(feeId, btnEl) {
        if (!feeId) return;
        var $btn = $(btnEl);
        var current = ($btn.text() || '').trim().toLowerCase();
        var nextStatus = current === 'approved' ? 'Pending' : 'Approved';
        var savingLabel = nextStatus === 'Approved' ? 'Approving...' : 'Setting Pending...';
        $btn.prop('disabled', true).text(savingLabel);
        $.post('update_fee_status.php', { id: feeId, status: nextStatus }, function(resp) {
            try { resp = (typeof resp === 'object') ? resp : JSON.parse(resp); } catch(e) { resp = { success:false, message: e.message }; }
            if (resp.success) {
                if (nextStatus === 'Approved') {
                    $btn.removeClass('btn-warning').addClass('btn-success').text('Approved');
                } else {
                    $btn.removeClass('btn-success').addClass('btn-warning').text('Pending');
                }
            } else {
                alert('Failed to update: ' + (resp.message || 'Unknown error'));
                // Revert to opposite label if failed
                if (current === 'approved') {
                    $btn.removeClass('btn-success').addClass('btn-warning').text('Pending');
                } else {
                    $btn.removeClass('btn-warning').addClass('btn-success').text('Approved');
                }
            }
            $btn.prop('disabled', false);
        }).fail(function(){
            alert('Request failed');
            // Revert UI to the other state label
            if (current === 'approved') {
                $btn.removeClass('btn-success').addClass('btn-warning').text('Pending');
            } else {
                $btn.removeClass('btn-warning').addClass('btn-success').text('Approved');
            }
            $btn.prop('disabled', false);
        });
    }

    // Function to show student details
    function showStudentDetails(admission_no) {
        modal.style.display = "block";
        
        // Show loading
        document.getElementById("modalBody").innerHTML = '<div style="text-align: center; padding: 20px;"><i class="fas fa-spinner fa-spin"></i> Loading...</div>';
        
        // Fetch student details via AJAX
        $.post("get_student_details.php", {admission_no: admission_no}, function(response) {
            console.log('Raw response:', response);
            console.log('Response type:', typeof response);
            
            var data;
            
            // Check if response is already parsed by jQuery
            if (typeof response === 'object') {
                data = response;
            } else {
                try {
                    data = JSON.parse(response);
                } catch (e) {
                    console.error('JSON Parse Error:', e);
                    document.getElementById("modalBody").innerHTML = '<div class="alert alert-danger">Error parsing response: ' + e.message + '</div>';
                    return;
                }
            }
            
            if (data.success) {
                displayStudentDetails(data.student, data.account, data.payments);
            } else {
                document.getElementById("modalBody").innerHTML = '<div class="alert alert-danger">' + data.message + '</div>';
            }
        }).fail(function(xhr, status, error) {
            console.error('AJAX Error:', status, error);
            document.getElementById("modalBody").innerHTML = '<div class="alert alert-danger">Failed to load student details: ' + error + '</div>';
        });
    }

    // Function to display student details in modal
    function displayStudentDetails(student, account, payments) {
        var html = '';
        
        // Student Info
        html += '<div class="student-info">';
        html += '<h4>Student Information</h4>';
        html += '<div class="row">';
        html += '<div class="col-md-6"><strong>Name:</strong> ' + student.student_name + '</div>';
        html += '<div class="col-md-6"><strong>Father\'s Name:</strong> ' + student.fathers_name + '</div>';
        html += '<div class="col-md-6"><strong>Admission No:</strong> ' + student.admission_no + '</div>';
        html += '<div class="col-md-6"><strong>Mobile:</strong> ' + student.mobile_no + '</div>';
        html += '<div class="col-md-6"><strong>Course:</strong> ' + student.course_name + '</div>';
        html += '<div class="col-md-6"><strong>Course Fee:</strong> ₹' + parseFloat(student.total_fee).toFixed(2) + '</div>';
        html += '</div>';
        html += '</div>';
        
        // Account Summary
        html += '<div class="summary-box">';
        html += '<h4>Account Summary</h4>';
        html += '<div class="row">';
        html += '<div class="col-md-3"><strong>Total Fees:</strong><br>₹' + parseFloat(account.total_fees || student.total_fee).toFixed(2) + '</div>';
        html += '<div class="col-md-3"><strong>Due Amount:</strong><br>₹' + parseFloat(account.due_amount || student.total_fee).toFixed(2) + '</div>';
        html += '<div class="col-md-3"><strong>Paid Amount:</strong><br>₹' + parseFloat(account.paid_amount || 0).toFixed(2) + '</div>';
        html += '<div class="col-md-3"><strong>Total Received:</strong><br>₹' + parseFloat(account.received_amount || 0).toFixed(2) + '</div>';
        html += '</div>';
        html += '</div>';
        
        // Payment History
        html += '<div class="payment-history">';
        html += '<h4>Payment History</h4>';
        
        if (payments && payments.length > 0) {
            payments.forEach(function(payment, index) {
                html += '<div class="payment-row">';
                html += '<div class="row">';
                html += '<div class="col-md-2"><strong>Payment #' + (index + 1) + '</strong></div>';
                html += '<div class="col-md-2">₹' + parseFloat(payment.received_amount).toFixed(2) + '</div>';
                html += '<div class="col-md-2">' + payment.payment_date + '</div>';
                html += '<div class="col-md-2">MR: ' + payment.mr_no + '</div>';
                html += '<div class="col-md-2">' + (payment.transaction_id || '-') + '</div>';
                html += '<div class="col-md-2">' + (payment.bank_upi || '-') + '</div>';
                html += '</div>';
                html += '</div>';
            });
        } else {
            html += '<div class="payment-row">No payment history found</div>';
        }
        
        html += '</div>';
        
        document.getElementById("modalBody").innerHTML = html;
    }
    </script>

    <!-- Include other scripts -->
   <script src="assets/plugins/popper/popper.min.js"></script>

    <!-- Bootstrap -->
    <script src="assets/plugins/bootstrap/js/bootstrap.js"></script>

    <!-- Moment -->
    <script src="assets/plugins/moment/moment.min.js"></script>

    <!-- Date Range Picker -->
    <script src="assets/plugins/daterangepicker/daterangepicker.min.js"></script>

    <!-- Datatable -->
    <script src="assets/plugins/datatables/jquery.dataTables.min.js"></script>
    <script src="assets/js/init-tdatatable.js"></script>

    <!-- DataTables Buttons (CDN) for export) -->
    <link rel="stylesheet" href="https://cdn.datatables.net/buttons/2.4.1/css/buttons.dataTables.min.css">
    <script src="https://cdn.datatables.net/buttons/2.4.1/js/dataTables.buttons.min.js"></script>
    <script src="https://cdnjs.cloudflare.com/ajax/libs/jszip/3.10.1/jszip.min.js"></script>
    <script src="https://cdnjs.cloudflare.com/ajax/libs/pdfmake/0.2.7/pdfmake.min.js"></script>
    <script src="https://cdnjs.cloudflare.com/ajax/libs/pdfmake/0.2.7/vfs_fonts.js"></script>
    <script src="https://cdn.datatables.net/buttons/2.4.1/js/buttons.html5.min.js"></script>
    <script src="https://cdn.datatables.net/buttons/2.4.1/js/buttons.print.min.js"></script>

    <script>
    // Initialize export buttons on fee report table
    (function(){
      if (!jQuery.fn.dataTable) return;
      if (!jQuery.fn.dataTable.Buttons) return;
      var sel = '#feeReportTable';
      if (!jQuery(sel).length) return;
      try { jQuery(sel).DataTable().destroy(); } catch(e) {}
      jQuery(sel).DataTable({
        order: [[0,'desc']],
        dom: 'Bfrtip',
        buttons: [
          {extend: 'copy', title: 'Fee Report'},
          {extend: 'csv', title: 'Fee Report'},
          {extend: 'excel', title: 'Fee Report'},
          {extend: 'pdf', title: 'Fee Report'},
          {extend: 'print', title: 'Fee Report'}
        ]
      });
    })();
    </script>

    <!-- Chart js -->
    <script src="assets/plugins/chart/chart/Chart.min.js"></script>
    <script src="assets/js/charts-custom.js"></script>

    <!-- Main Custom JQuery -->
    <script src="assets/js/toggleFullScreen.js"></script>
    <script src="assets/js/main.js"></script>
</body>
</html>