EVOLUTION-NINJA
Edit File: user-homepage.php
<?php echo view('includes/headerSidebar'); ?> <script src="https://code.jquery.com/jquery-3.6.0.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> .mainheading { padding: 8px 17px; box-shadow: rgba(0, 0, 0, 0.05) 0px 6px 24px 0px, rgba(0, 0, 0, 0.08) 0px 0px 0px 1px; color: #15283C; font-size: 18px; font-weight: 500; } .user_details_main { border-radius: 13px; box-shadow: rgba(99, 99, 99, 0.2) 0px 2px 8px 0px; /* width: 55%; */ padding: 27px; min-height: 301px; background-color: white; } .use_img { width: 140px; height: 126px; /* border: 1px solid; */ border-radius: 50%; overflow: hidden; } .user_deta { /* border: 1px solid; */ } .user_deta>p { margin: 0; margin-bottom: 5px; } .user_deta>p:nth-child(1) { color: #0065A3; font-size: 26px; font-weight: 600; } .user_deta>p:nth-child(2) { color: #33363F; font-size: 19px; font-weight: 600; } .user_deta>p:nth-child(3) { color: #222323; font-size: 16px; font-weight: 600; word-wrap: break-word; white-space: break-spaces; word-break: break-word; } .user_idno { color: #575757 } .user_border { height: 1px; border: 1px solid #B7B4B4; margin-bottom: 15px; } .user_more_inf { margin-bottom: 10px; display: flex; align-items: center; font-size: 16px; font-weight: 500; margin-left: 10px; /* color: #007bff; */ color: #444; } .user_more_inf>span { margin-left: 8px; color: #525252; } .user_de { color: #363636; font-weight: 500; margin: 0; margin-bottom: 8px; margin-left: 4px; font-size: 20px; } .mor_det { color: #212529; font-weight: 500; } /* promoter details */ .prom_det { position: relative; width: 300px; padding: 20px; box-shadow: rgba(100, 100, 111, 0.2) 0px 7px 29px 0px; margin: auto; margin-bottom: 15px; background-color: white; } .prom_det:hover { scale: 1.1; transition: scale 0.6s ease-in-out; } .prom_icon { width: 63px; position: relative; top: -47px; left: 17px; } .prom_det>.pro_mon { float: right; margin-top: 18px; font-size: 18px; font-weight: 600; color: #345757; } .prom_detail { /* display:grid; grid-template-columns: repeat(5,1fr); */ display: flex; flex-wrap: wrap; flex: 1 0 300px; gap: 22px; margin: auto; } .peo_par { color: #443; font-weight: 600; margin-top: 4px } @media only screen and (max-width:628px) { .user_details_main { width: 100%; padding: 12px; min-height: auto; } } @media only screen and (min-width:629px) and (max-width:1028px) { .user_details_main { width: 100%; min-height: auto; } } </style> <div id="main" class="p-4"> <section> <!-- account details --> <div class="mainheading">My Account</div> <div class="row mt-5"> <div class="col-lg-8 col-md-12 col-sm-12"> <div class="user_details_main h-auto mb-3"> <div class="d-flex mb-3 flex-wrap align-items-center flex-wrap"> <img src='<?php echo base_url("public/assets/images/Rectangle 4141 (1).png")?>' alt="user image" class="use_img "> <div class="user_deta ml-4"> <p> <?php echo session()->get('username');?></p> <p>User Key: <span class="user_idno" id="user_id"></span> </p> </div> </div> <div class="accordion" id="accordionExample"> <div class="card"> <div class="card-header" id="headingOne"> <h2 class="mb-0"> <button class="btn btn-link btn-block text-left text-decoration-none mor_det" type="button" data-toggle="collapse" data-target="#collapseOne" aria-expanded="true" aria-controls="collapseOne"> More Details </button> </h2> </div> <div id="collapseOne" class="collapse show" aria-labelledby="headingOne" data-parent="#accordionExample"> <div class="card-body"> <p class="user_de">About</p> <div class="user_more_inf"> Full Name: <span class="usre_inf" id="customerFullName"></span></div> <div class="user_more_inf"> Role: <span class="usre_inf" id="customerRole" >Customer</span> </div> <div class="user_more_inf"> City: <span class="usre_inf" id="customerCity"></span></div> <!--<div class="user_more_inf"> Status: <span class="usre_inf">Inactive</span></div>--> <!--<div class="user_more_inf"> Plans: <span class="usre_inf">Inactive</span></div>--> <div class="user_border"></div> <p class="user_de">Contact Details</p> <div class="user_more_inf"> Contact: <span class="usre_inf" id="customerPhone"></span> </div> <div class="user_more_inf"> Email: <span class="usre_inf" id="customerEmail"></span> </div> </div> </div> </div> </div> </div> </div> <div class="col-lg-4 col-md-12 col-sm-12"> <div class="overview-prom user_details_main" style="box-shadow: rgba(17, 17, 26, 0.1) 0px 1px 0px, rgba(17, 17, 26, 0.1) 0px 8px 24px, rgba(17, 17, 26, 0.1) 0px 16px 48px;"> <p class="user_de">Overview</p> <div class="user_more_inf"> Total Payments:<span class="usre_inf" id="customer_payment"></span> </div> <div class="user_more_inf"> Total Months: <span class="usre_inf" id="customer_month"></span> <span class="usre_inf"></span> </div> <!--<div class="user_more_inf">Connections: <span class="usre_inf"></span> </div>--> </div> </div> </div> </section> <section> <br> <!--<div class="prom_detail mt-5">--> <h3>Customer Payments</h3> <br> <table class="table table-striped table-hover" id="paymentTable"> <thead> <tr> <th>Sl no</th> <th>Scheme Name</th> <th>Amount</th> <th>Payment_Date</th> </tr> </thead> <tbody> <!-- Data will be loaded here via AJAX --> </tbody> </table> <!--</div>--> </section> </div> </body> <script> $(document).ready(function() { // Trigger AJAX request to get customer details when the page is loaded $.ajax({ url: '<?= site_url('get-Customers') ?>',// Controller URL for getting customer details method: 'GET', success: function(response) { if (response.result === 1) { // Fill the details in the HTML $('#user_id').text(response.data.user_id); $('#customerFullName').text( response.data.name); $('#customerRole').text( response.data.role); $('#customerCity').text( response.data.city); $('#customerPhone').text( response.data.mobile); $('#customerEmail').text(response.data.email); $('#customer_payment').text(response.data.total_payment || 0); $('#customer_month').text(response.data.total_months); } else { alert(response.message); } }, error: function(xhr, status, error) { console.log('Error: ' + error); } }); }); </script> <script src="https://code.jquery.com/jquery-3.6.0.min.js"></script> <script src="https://cdn.jsdelivr.net/npm/datatables.net/js/jquery.dataTables.min.js"></script> <script src="https://cdn.jsdelivr.net/npm/datatables.net-bs4/js/dataTables.bootstrap4.min.js"></script> <script src="https://cdn.jsdelivr.net/npm/sweetalert2@11.10.8/dist/sweetalert2.all.min.js"></script> <script> $(document).ready(function() { // Initialize DataTable $('#paymentTable').DataTable({ "processing": true, "serverSide": true, "ajax": { "url": '<?= site_url('get-paymentdata') ?>', // URL to fetch data from "type": 'GET', "dataType": 'json', "dataSrc": function(json) { return json.data; // The data will be returned from the server as json.data } }, "columns": [ { "data": null, "render": function(data, type, row, meta) { return meta.row + 1; // Display row number starting from 1 } }, { "data": "scheme" }, // Assuming 'name' is the column name for scheme name { "data": "amount" }, { "data": "payment_date" } ], "language": { "emptyTable": "No payments available" }, "pageLength": 10, // Number of rows per page "lengthChange": true, // Allow users to change number of rows per page "searching": true, // Enable searching "ordering": true, // Enable sorting "order": [[0, 'asc']] // Default order by first column (Sl no) }); }); </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> <script> $(document).ready(function () { $('#withdraw').click(function (e) { e.preventDefault(); window.location.href = "<?php echo base_url('withdraw'); ?>"; }); }); </script> </html>