EVOLUTION-NINJA
Edit File: Repayment_Pins_Request.php
<!--<?//php echo view('includes/sidebar'); ?>--> <?php echo view('includes/headerSidebar'); ?> <script type="text/javascript" src="<?php echo base_url('public/assets/js/jquery-3.6.0.min.js'); ?>"></script> <script src="<?php echo base_url('public/assets/toastr/toastr.min.js');?>"></script> <link rel="stylesheet" href="<?php echo base_url('public/assets/toastr/toastr.min.css');?>"> <link rel="stylesheet" href="https://cdn.datatables.net/1.11.5/css/jquery.dataTables.min.css"> <script src="https://cdn.jsdelivr.net/npm/bootstrap@5.1.3/dist/js/bootstrap.bundle.min.js"></script> <script src="https://cdn.datatables.net/1.11.5/js/jquery.dataTables.min.js"></script> <link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.4/css/all.min.css" rel="stylesheet"> <style> /* Reduce table margin and padding */ .dataTables_wrapper { margin: 10px auto; /* Smaller margin */ width: 95%; /* Adjust width for a compact layout */ } /* Style table */ #datatable { border: 1px solid #ddd; border-radius: 5px; font-size: 14px; /* Adjust font size */ background-color: #fff; } /* Header styling */ #datatable thead { background-color: #f4f4f4; color: #333; font-weight: bold; border-bottom: 2px solid #ccc; } /* Row styling */ #datatable tbody tr { border-bottom: 1px solid #ddd; } #datatable tbody tr:hover { background-color: #f9f9f9; /* Highlight on hover */ } /* Action buttons */ .crud--buttons .btn { margin: 0 5px; /* Small spacing between buttons */ font-size: 12px; /* Smaller font for buttons */ padding: 5px 10px; /* Compact button size */ border-radius: 3px; } /* Eye icon button */ .view--butt { color: #fff; background-color: #17a2b8; /* Bootstrap 'info' color */ border: none; } /* Menu icon button */ .menu--butt { color: #fff; background-color: #6c757d; /* Bootstrap 'secondary' color */ border: none; } /* Icon sizes */ .fas { font-size: 14px; vertical-align: middle; } /* Serial number column */ #datatable td:first-child { text-align: center; font-weight: bold; } .btn-close { background:white; border: none; appearance: none; width: 2em; height: 2em; opacity: 0.5; border-radius:25px; } .btn-close::before { content: "×"; font-size: 1.5rem; color: #000; } .modalform.fullscreen-modal { padding: 0 !important; } .modalform.fullscreen-modal .modal-dialog { margin: 0; width: 100vw; max-width: 60vw; height: 100vh; max-height: 60vh; margin:130px 0px 0px 350px; } .modalform.fullscreen-modal .modal-content { height: 100%; border-radius: 0; } .modalform.fullscreen-modal .modal-body { overflow-y: auto; } .createBtn{ margin-left:930px; } </style> <div id="main" class="p-4"> <section class="home-section fullpage"> <div class="home-content"> <i class='bx bx-menu'></i> <!-- <span class="text">Drop Down Sidebar</span> --> </div> <!-- heading row --> <div class="row m-0"> <div class="col-sm-12"> <h1 class="crt-pjt">My Repayment Pin Request</h1> </div> </div> <div class="container"> <div class="row"> <button type="button" class="btn btn-primary createBtn" data-bs-toggle="modal" data-bs-target="#fullscreenModal">Create</button> </div> </div> <br><br> <!-- form row --> <!-- forms --> <div class="row"> <div class="col-sm-12"> <div class="container deptable"> <table id="datatable" class="table table-striped table-bordered"> <thead> <tr> <th>SL No</th> <!-- Serial Number --> <th>ID</th> <th>REQUEST ID</th> <th>NO OF PINS REQUESTED</th> <!--<th>USER ID</th>--> <th>SCHEME</th> <th>COUNT</th> <th>APPROVE STATUS</th> <th>PAYMENT STATUS</th> <th>REMARKS</th> <th>REQUESTED ON</th> </tr> </thead> <tbody> <!-- DataTables will populate the rows dynamically --> </tbody> </table> </div> </div> </div> </div> </div> <!----modal start --> <!-- Full-Screen Modal --> <div class="modal fade fullscreen-modal modalform" id="fullscreenModal" tabindex="-1" aria-labelledby="fullscreenModalLabel" aria-hidden="true"> <div class="modal-dialog"> <div class="modal-content"> <div class="modal-header"> <h5 class="modal-title" id="fullscreenModalLabel">MY REPAYMENT PIN REQUEST</h5> <button type="button" class="btn-close" data-bs-dismiss="modal" aria-label="Close"></button> </div> <div class="modal-body"> <form id="pin-request-form"> <div class="row"> <div class="col-sm-6"> <label for="">SCHEME</label> <!--<input type="text" class="form-control" placeholder="" name="scheme">--> <select class="form-control" id="scheme" name="scheme"> </select> </div> <div class="col-sm-6"> <label for="">NO OF PIN REQUESTED</label> <input type="text" class="form-control" placeholder="eg:30" name="no_of_pin"> </div> </div> <br> <div class="row"> <div class="col-sm-6"> <label for="">PAYMENT STATUS</label> <input type="text" class="form-control" placeholder="Payment status" name="payment_status"> </div> <div class="col-sm-6"> <label for="">REMARKS</label> <input type="text" class="form-control" placeholder="Transaction No" name="remarks"> </div> </div> <br><br> <div class="row"> <div style="float:left;margin-left:10px;"> <button type="submit" class="btn btn-primary">Submit</button> <button type="button" class="btn btn-danger" data-bs-dismiss="modal">Cancel</button> </div> </div> </form> </div> </div> </div> </section> </div> </body> <script src="https://cdn.jsdelivr.net/npm/sweetalert2@11.10.8/dist/sweetalert2.all.min.js"></script> <link href="https://cdn.jsdelivr.net/npm/sweetalert2@11.10.8/dist/sweetalert2.min.css" rel="stylesheet"> <script> $(document).ready(function () { $('#btn-cancel').click(function (e) { e.preventDefault(); $('#form-department')[0].reset(); }) }) </script> <script> $(document).ready(function () { var table = $('#datatable').DataTable({ pageLength: 20, ajax: { url: '<?php echo base_url("repayment_pin_request_list"); ?>', dataSrc: '' }, columns: [ { data: null }, { data: 'id', visible: false }, { data: 'request_id' }, { data: 'total_slots' }, // { data: 'user_id' }, { data: 'scheme' }, { data: 'used_slots' }, { data: 'status' }, { data: 'payment_status' }, { data: 'remarks' }, { data: 'created_at', // Date and Time render: function (data) { // Format the date as dd-mm-yy and time as hh:mm var date = new Date(data); var day = ("0" + date.getDate()).slice(-2); // Ensure 2 digits var month = ("0" + (date.getMonth() + 1)).slice(-2); // Month is zero-indexed var year = date.getFullYear().toString(); // Get last 2 digits of year var hours = ("0" + date.getHours()).slice(-2); var minutes = ("0" + date.getMinutes()).slice(-2); // Return formatted date and time return day + '-' + month + '-' + year + ' ' + hours + ':' + minutes; } }, ], rowCallback: function (row, data, index) { // Serial number $('td:eq(0)', row).html(index + 1); }, language: { emptyTable: "No data available" } }); }); </script> <script> $(document).ready(function () { $('#pin-request-form').submit(function (e) { e.preventDefault() formdata = new FormData($(this)[0]); $.ajax({ type: 'post', url: '<?php echo base_url("my-repaymentPins-request");?>', data: formdata, contentType: false, processData: false, success: function (response) { // console.log(response); if (response.result == 1) { Swal.fire({ icon: "success", title: response.message, }); $('#pin-request-form')[0].reset(); const modal = bootstrap.Modal.getInstance(document.getElementById('fullscreenModal')); modal.hide(); $('#datatable').DataTable().ajax.reload(); } else if (response.result == 0) { Swal.fire({ icon: "error", title: response.message }); } else { Swal.fire({ icon: "error", title: response.message }); } }, error: function (xhr, textStatus, errorThrown) { console.error(xhr.responseText); } }) }) }) </script> <script> $(document).ready(function () { $.ajax({ url: '<?php echo base_url("fetch-scheme"); ?>', method: 'GET', success: function (response) { if (response.length > 0) { var options = '<option value="">Select Scheme</option>'; $.each(response, function (key, value) { options += `<option value="${value.id}">${value.scheme}</option>`; }); $('#scheme').html(options); } else { // alert('No funds found'); } }, error: function (xhr, status, error) { console.error("Error fetching scheme:", error); } }); }); </script> <script> let arrow = document.querySelectorAll(".arrow"); for (var i = 0; i < arrow.length; i++) { arrow[i].addEventListener("click", (e) => { let arrowParent = e.target.parentElement.parentElement; arrowParent.classList.toggle("showMenu"); }); } let sidebar = document.querySelector(".sidebar"); let sidebarBtn = document.querySelector(".bx-menu"); console.log(sidebarBtn); sidebarBtn.addEventListener("click", () => { sidebar.classList.toggle("close"); }); </script> </html>