????????????????????
??????????????????
ÿØÿà
 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');


   $userId = $_SESSION['userid'];


// DB Connection
$conn = mysqli_connect("localhost", "xceljsr_db", "xcel@123#$", "xceljsr_db");
if ($conn === false) {
    die("ERROR: Could not connect. " . mysqli_connect_error());
}

// Get search filters
$search_text = isset($_GET['search_text']) ? mysqli_real_escape_string($conn, $_GET['search_text']) : '';
$date_from = isset($_GET['date_from']) ? mysqli_real_escape_string($conn, $_GET['date_from']) : '';
$date_to = isset($_GET['date_to']) ? mysqli_real_escape_string($conn, $_GET['date_to']) : '';

// Delete record
if(isset($_GET['idk'])){
     $delsql = "DELETE FROM expenses WHERE id=".$_GET['idk'];
     $conn->query($delsql);
     exit;
}

// Handle form submission
if ($_SERVER["REQUEST_METHOD"] == "POST") {
    $payment_to   = mysqli_real_escape_string($conn, $_POST['payment_to']);
    $purpose      = mysqli_real_escape_string($conn, $_POST['purpose']);
    $amount       = mysqli_real_escape_string($conn, $_POST['amount']);
    $remark       = mysqli_real_escape_string($conn, $_POST['remark']);
    $date         = mysqli_real_escape_string($conn, $_POST['date']);

    // File upload
    $bill_attachment = "";
    if (!empty($_FILES["bill_attachment"]["name"])) {
        $target_dir = "uploads/";
        if(!is_dir($target_dir)){
            mkdir($target_dir, 0777, true);
        }
        $bill_attachment = $target_dir . time() . "_" . basename($_FILES["bill_attachment"]["name"]);
        move_uploaded_file($_FILES["bill_attachment"]["tmp_name"], $bill_attachment);
    }

    $addedby = $_SESSION['userid'];

    // Insert query
    $sql = "INSERT INTO expenses (payment_to, purpose, amount, remark, bill_attachment, date, addedby) 
            VALUES ('$payment_to','$purpose','$amount','$remark','$bill_attachment','$date','$addedby')";

    if (mysqli_query($conn, $sql)) {
        echo '<script>alert("Expense Added Successfully..."); window.location.href="expense.php"</script>';
    } else {
        echo "ERROR: $sql. " . mysqli_error($conn);
    }
}

// Build the WHERE clause for filters
$where_conditions = [];

// Always show only the records created by the logged-in user
$where_conditions[] = "addedby = '" . mysqli_real_escape_string($conn, $login_session) . "'";

if (!empty($search_text)) {
    $where_conditions[] = "(payment_to LIKE '%$search_text%' OR purpose LIKE '%$search_text%' OR remark LIKE '%$search_text%')";
}
if (!empty($date_from)) {
    $where_conditions[] = "date >= '$date_from'";
}
if (!empty($date_to)) {
    $where_conditions[] = "date <= '$date_to'";
}

$where_clause = '';
if (!empty($where_conditions)) {
    $where_clause = 'WHERE ' . implode(' AND ', $where_conditions);
}

// Fetch expenses with filters
$sql = "SELECT * FROM expenses $where_clause ORDER BY id DESC";
$result = mysqli_query($conn, $sql);

// Store data in array to avoid result consumption issues
$expense_records = array();
if ($result && mysqli_num_rows($result) > 0) {
    while ($row = mysqli_fetch_assoc($result)) {
        $expense_records[] = $row;
    }
}

// Debug info to check data
$debug_info = "";
if (!$result) {
    $debug_info = "SQL Error: " . mysqli_error($conn) . "<br>Query: " . $sql;
} else {
    $debug_info = "Query executed successfully. Records found: " . count($expense_records) . "<br>SQL: " . $sql;
}

// Check total records in expenses table
$check_total_sql = "SELECT COUNT(*) as total_count FROM expenses";
$check_result = mysqli_query($conn, $check_total_sql);
if ($check_result) {
    $total_expenses = mysqli_fetch_assoc($check_result)['total_count'];
    $debug_info .= "<br>Total records in expenses table: " . $total_expenses;
}






$a=0;
?>


<!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>Add Expenses | Xcel Training Institute</title>
    <link rel="icon" type="image/png" href="../images/logo-wide.png">
    <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" crossorigin="anonymous"></script>
    <style>
    .btn{
        background-color: red;
        border: none;
        color: white;
        padding: 5px 5px;
        font-size: 20px;
        margin: 4px 2px;
        cursor: pointer;
        border-radius: 20px;
    }
    .green{ background-color: #199319; }
    .red{ background-color: red; }

    /* Expense Table Styling */
    #example1 {
        width: 100%;
        border-collapse: collapse;
        margin: 20px 0;
        background: white;
        box-shadow: 0 2px 4px rgba(0,0,0,0.1);
    }

    #example1 th {
        background: #e9ecef;
        color: #090909;
        font-weight: 600;
        padding: 12px 8px;
        text-align: left;
        border: 1px solid #adb0b3;
        font-size: 14px;
    }

    #example1 td {
        padding: 10px 8px;
        border: 1px solid #dee2e6;
        vertical-align: middle;
        font-size: 13px;
    }

    #example1 tbody tr:nth-child(even) {
        background-color: #f8f9fa;
    }

    #example1 tbody tr:hover {
        background-color: #e8f5e8;
    }

    .table-responsive {
        overflow-x: auto;
        border-radius: 8px;
        border: 1px solid #dee2e6;
    }

    .filter-row {
        background: #f8f9fa;
        padding: 15px;
        border-radius: 8px;
        margin-bottom: 20px;
        border: 1px solid #e9ecef;
    }

    .debug-info {
        background: #fff3cd;
        padding: 10px;
        margin: 10px 0;
        border: 1px solid #ffeaa7;
        border-radius: 5px;
        font-size: 12px;
    }
    </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="col-lg-12">
                      <div class="card">
                          <div class="card-header">
                              <h4 class="card-title">Add Expense</h4>
                          </div>
                          <div class="card-body">
                              <div class="basic-form">
                                  <form method="post" enctype="multipart/form-data">
                                      <div class="row">
                                          <div class="col-xl-4">
                                              <div class="form-group">
                                                  <label class="form-label">Payment To:</label>
                                                  <input type="text" class="form-control" name="payment_to" placeholder="Payment to" required>
                                              </div>
                                          </div>
                                          <div class="col-xl-4">
                                              <div class="form-group">
                                                  <label class="form-label">Purpose:</label>
                                                  <input type="text" class="form-control" name="purpose" required>
                                              </div>
                                          </div>
                                          <div class="col-xl-4">
                                              <div class="form-group">
                                                  <label class="form-label">Amount:</label>
                                                  <input type="number" step="0.01" name="amount" class="form-control" required>
                                              </div>
                                          </div>
                                          <div class="col-xl-4">
                                              <div class="form-group">
                                                  <label class="form-label">Remark:</label>
                                                  <textarea name="remark" class="form-control" required></textarea>
                                              </div>
                                          </div>
                                          <div class="col-xl-4">
                                              <div class="form-group">
                                                  <label class="form-label">Date:</label>
                                                  <input type="date" name="date" class="form-control">
                                              </div>
                                          </div>
                                          <div class="col-xl-4">
                                              <div class="form-group">
                                                  <label class="form-label">Bill Attachment:</label>
                                                  <input type="file" name="bill_attachment" class="form-control">
                                              </div>
                                          </div>
                                      </div>
                                      <div class="form-group text-right">
                                          <button type="submit" class="float-end"><img src="assets/save1.png" title="Save" style="height:30px; width:30px;"></button>
                                      </div>
                                  </form>
                              </div>
                          </div>
                      </div>
                  </div>

                  <!-- Filter Section -->
                  <div class="col-lg-12">
                      <div class="card">
                          <div class="card-header">
                              <h4 class="card-title">Filter Expenses</h4>
                          </div>
                          <div class="card-body">
                              <div class="filter-row">
                                  <form method="GET" action="">
                                      <div class="row">
                                          <div class="col-xl-4">
                                              <label>Search (Payment To / Purpose / Remark)</label>
                                              <input type="text" class="form-control" name="search_text" value="<?php echo htmlspecialchars($search_text); ?>" placeholder="Search...">
                                          </div>
                                          <div class="col-xl-3">
                                              <label>Date From</label>
                                              <input type="date" class="form-control" name="date_from" value="<?php echo htmlspecialchars($date_from); ?>">
                                          </div>
                                          <div class="col-xl-3">
                                              <label>Date To</label>
                                              <input type="date" class="form-control" name="date_to" value="<?php echo htmlspecialchars($date_to); ?>">
                                          </div>
                                          <div class="col-xl-2">
                                              <label>&nbsp;</label><br>
                                              <button type="submit" class="btn btn-primary" style="background: #007bff; padding: 8px 15px; font-size: 14px;">Filter</button>
                                              <a href="expense.php" class="btn btn-secondary" style="background: #6c757d; padding: 8px 15px; font-size: 14px; color: white; text-decoration: none;">Clear</a>
                                          </div>
                                      </div>
                                  </form>
                              </div>
                          </div>
                      </div>
                  </div>

                  <!-- Debug Info -->
                  <!-- <?php if (!empty($debug_info)): ?>
                  <div class="col-lg-12">
                      <div class="debug-info">
                          <strong>Debug Info:</strong> <?php echo $debug_info; ?>
                      </div>
                  </div>
                  <?php endif; ?> -->

                  <div class="col-md-12">
                      <div class="card shadow">
                          <div class="card-header">
                              <h4 class="card-title">Expenses</h4>
                          </div>
                          <div class="card-body">
                              <div class="table-responsive">
                                  <table id="example1" class="display nowrap">
                                      <thead>
                                          <tr>
                                              <th>ID</th>
                                              <th>Payment To</th>
                                              <th>Purpose</th>
                                              <th>Amount</th>
                                              <th>Remark</th>
                                              <th>Date</th>
                                              <th>Bill</th>
                                              <th>Action</th>
                                          </tr>
                                      </thead>
                                      <tbody>
                                      <?php 
                                      if (empty($expense_records)) {
                                          echo '<tr><td colspan="8" style="text-align: center; color: #6c757d; padding: 20px;">No expense records found</td></tr>';
                                      } else {
                                          foreach($expense_records as $rows10): 
                                      ?>
                                          <tr id="<?php echo $rows10['id']; ?>">
                                              <td><?php echo ++$a; ?></td>
                                              <td><?php echo htmlspecialchars($rows10['payment_to'] ?? ''); ?></td>
                                              <td><?php echo htmlspecialchars($rows10['purpose'] ?? ''); ?></td>
                                              <td>₹<?php echo number_format(floatval($rows10['amount'] ?? 0), 2); ?></td>
                                              <td><?php echo htmlspecialchars($rows10['remark'] ?? ''); ?></td>
                                              <td><?php echo $rows10['date'] ? date('d-m-Y', strtotime($rows10['date'])) : ''; ?></td>
                                              <td>
                                                  <?php if(!empty($rows10['bill_attachment'])){ ?>
                                                      <a href="<?php echo htmlspecialchars($rows10['bill_attachment']); ?>" target="_blank" style="color: #007bff;">View</a>
                                                  <?php } else { echo "No File"; } ?>
                                              </td>
                                              <td>
                                                  <a class="mr-4 check" href="update-expense.php?idk=<?php echo $rows10['id'];?>" title="UPDATE" style="color: #28a745; margin-right: 10px;">
                                                      <span class="fas fa-edit"></span>
                                                  </a>
                                                  <a class='remove' style="color: #dc3545; cursor: pointer;"><span class='fas fa-trash-alt'></span></a>
                                              </td>
                                          </tr>
                                      <?php 
                                          endforeach;
                                      }
                                      ?>
                                      </tbody>
                                  </table>
                              </div>
                          </div>
                      </div>
                  </div>
               </div>
            </div>
        </div>
      </div>

      <?php include('footer.php'); ?>
    </div>

<script type="text/javascript">
$(".remove").click(function(){
    var idk = $(this).parents("tr").attr("id");
    if(confirm('Are you sure to remove this record ?')){
        $.get("expense.php?idk="+idk, function(data, status){
            $("#"+idk).remove();
            alert("Record removed successfully");  
        });
    }
});
</script>

<script src="assets/plugins/popper/popper.min.js"></script>
<script src="assets/plugins/bootstrap/js/bootstrap.js"></script>
<script src="assets/plugins/moment/moment.min.js"></script>
<script src="assets/plugins/daterangepicker/daterangepicker.min.js"></script>

<!-- DataTables core -->
<script src="assets/plugins/datatables/jquery.dataTables.min.js"></script>
<!-- init-tdatatable.js excluded on this page to avoid double initialization -->

<!-- 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>
// Reinitialize #example1 with export buttons (after the default init)
$(document).ready(function () {

    if ($.fn.DataTable.isDataTable('#example1')) {
        $('#example1').DataTable().destroy();
    }

    $('#example1').DataTable({
        order: [[0, 'desc']],
        dom: 'Bfrtip',
        buttons: [
            'copy', 'csv', 'excel', 'pdf', 'print'
        ]
    });

});
</script>

<script src="assets/plugins/chart/chart/Chart.min.js"></script>
<script src="assets/js/charts-custom.js"></script>
<script src="assets/js/toggleFullScreen.js"></script>
<script src="assets/js/main.js"></script>
</body>
</html>
