[
MAINHACK
]
Mail Test
BC
Config Scan
HOME
Create...
New File
New Folder
Viewing / Editing File: printer_setup.js
$(function () { "use strict" let base_url = $('#base_url_').val(); let network_printer = $('#network_printer').val(); let windows_printer = $('#windows_printer').val(); let are_you_sure = $('#are_you_sure').val(); let yes = $('#yes').val(); let cancel = $('#cancel').val(); let alert = $('#alert').val(); let no_permission_for_this_module = $('#no_permission_for_this_module').val(); let ok = $("#ok").val(); let warning = $('#warning').val(); let update_success = $('#update_success').val(); let insert_success = $('#insert_success').val(); let delete_success = $('#delete_success').val(); let title_required = $('#title_required').val(); let Characters_Per_Line_required = $('#Characters_Per_Line_required').val(); let Printer_IP_required = $('#Printer_IP_required').val(); let Printer_Port_required = $('#Printer_Port_required').val(); let Path_field_required = $('#Path_field_required').val(); let Print_Server_URL_required = $('#Print_Server_URL_required').val(); let Printer_Change_Successful = $('#Printer_Change_Successful').val(); let Cash_Drawer_Change_Successful = $('#Cash_Drawer_Change_Successful').val(); let Add_Printer = $('#Add_Printer').val(); let Edit_Printer = $('#Edit_Printer').val(); let select_ln = $('#select_ln').val(); let insert_success_msg = `<section class="alert-wrapper"> <div class="alert alert-success alert-dismissible fade show"> <button type="button" class="btn-close" data-bs-dismiss="alert" aria-label="Close"></button> <div class="alert-body"> <i class="m-right fa fa-check"></i> ${insert_success} </div> </div> </section>`; let update_success_msg = `<section class="alert-wrapper"> <div class="alert alert-success alert-dismissible fade show"> <button type="button" class="btn-close" data-bs-dismiss="alert" aria-label="Close"></button> <div class="alert-body"> <i class="m-right fa fa-check"></i> ${update_success} </div> </div> </section>`; let delete_success_msg = `<section class="alert-wrapper"> <div class="alert alert-success alert-dismissible fade show"> <button type="button" class="btn-close" data-bs-dismiss="alert" aria-label="Close"></button> <div class="alert-body"> <i class="m-right fa fa-check"></i> ${delete_success} </div> </div> </section>`; function printFieldHideShow(){ let print_choise = $('#invoice_print').val(); let print_format = $('#print_format').val(); let inv_qr_code_status = $('#inv_qr_code_status').val(); let printer_type = $('.e_type ').val(); if(print_choise == 'web_browser'){ $('.hide_show_4').hide(); $('.hide_show_5').hide(); $('.hide_show_6').hide(); $('.hide_show_7').hide(); $('.hide_show_8').hide(); $('.hide_show_9').hide(); $('.hide_show_9').hide(); $('.hide_show_10').hide(); $('.hide_show_11').hide(); $('.hide_show_1').show(); if(print_format == '56mm' || print_format == '80mm'){ $('.hide_show_2').show(); if(inv_qr_code_status == 'Enable'){ $('.hide_show_3').show(); } else { $('.hide_show_3').hide(); } }else{ $('.hide_show_2').hide(); $('.hide_show_3').hide(); } } else if(print_choise == 'live_server_print'){ $('.hide_show_1').hide(); $('.hide_show_2').hide(); $('.hide_show_3').hide(); $('.hide_show_4').show(); $('.hide_show_9').show(); $('.hide_show_7').show(); if(printer_type == 'network'){ $('.hide_show_5').show(); $('.hide_show_6').show(); $('.hide_show_10').show(); $('.hide_show_11').show(); } else if(printer_type == 'windows'){ $('.hide_show_7').show(); $('.hide_show_8').show(); $('.hide_show_5').hide(); $('.hide_show_6').hide(); $('.hide_show_10').hide(); $('.hide_show_11').hide(); } } } $(document).on('change','.e_type' , function(e){ printFieldHideShow(); }); $(document).on('change','#print_format' , function(e){ printFieldHideShow(); }); $(document).on('change','#inv_qr_code_status' , function(e){ printFieldHideShow(); }); $(document).on('change','#invoice_print' , function(e){ printFieldHideShow(); }); // Show All Printer Modal Data $(document).on('click', '.all_printers', function () { $.ajax({ url: base_url + "Master/checkAccess", method: "GET", async: false, dataType: 'json', data: { controller: "14", function: "list" }, success: function (response) { if (response == false) { Swal.fire({ title: warning+" !", text: no_permission_for_this_module, showDenyButton: false, showCancelButton: false, confirmButtonText: ok, }); } else { $("#allPrinters").modal('show'); fatchAllPrinters(); } } }); }); // Add New Printer $(document).on('click', '.add_new_printer', function () { $.ajax({ url: base_url + "Master/checkAccess", method: "GET", async: false, dataType: 'json', data: { controller: "14", function: "add" }, success: function (response) { if (response == false) { Swal.fire({ title: warning+" !", text: no_permission_for_this_module, showDenyButton: false, showCancelButton: false, confirmButtonText: ok, }); } else { resetFields(); $("#addPrinters").modal('show'); $('.modal_title').text(Add_Printer); $('#edit_id').val(''); $('.e_type').html('').html(` <option value="network">${network_printer}</option> <option value="windows">${windows_printer}</option> `); printFieldHideShow(); } } }); }); // Fetch API to show all data function fatchAllPrinters(){ $.ajax({ type: "GET", url: base_url+"Printer/printers", success: function (response) { $(".all_printer tbody").html(""); $.each(response.data, function (key, item) { $(".all_printer tbody").append(`<tr> <td>${key + 1}</td> <td>${item.title}</td> <td>${item.type}</td> <td>${item.characters_per_line}</td> <td>${item.printer_ip_address}</td> <td>${item.printer_port}</td> <td>${item.path}</td> <td class="text-center"> <div class="btn_group_wrap"> <a class="btn btn-warning edit_printr_item" href="javascript:void(0)" data_id="${item.id}" data-bs-toggle="tooltip" data-bs-placement="top" data-bs-original-title="Edit"> <i class="far fa-edit"></i> </a> <a class="delete btn btn-danger delete_item" href="javascript:void(0)" data_id="${item.id}" data-bs-toggle="tooltip" data-bs-placement="top" data-bs-original-title="Delete"> <i class="fa-regular fa-trash-can"></i> </a> </div> </td> </tr>` ); $('.printer_table_trigger [data-bs-toggle="tooltip"]').tooltip(); }); } }); } fatchAllPrinters(); // Add/Update Printer $(document).on('click', '.add_printer_submit', function(e){ e.preventDefault(); $.ajax({ url: base_url + "Master/checkAccess", method: "GET", async: false, dataType: 'json', data: { controller: "14", function: "add" }, success: function (response) { if (response == false) { Swal.fire({ title: warning+" !", text: no_permission_for_this_module, showDenyButton: false, showCancelButton: false, confirmButtonText: ok, }); } else { let error = false; let title = $('.e_title').val(); let invoice_print = $('#invoice_print').val(); let type = $('.e_type').val(); let e_characters_per_line = $('.e_characters_per_line').val(); let path_err_msg_contnr = $('.e_path').val(); let print_server_url_invoice = $('#print_server_url_invoice').val(); let e_printer_ip_address = $('.e_printer_ip_address').val(); let e_printer_port = $('.e_printer_port').val(); if (title == '') { error = true; $('.title_err_msg').text(title_required); $('.title_err_msg_contnr').show(200).delay(6000).hide(200, function () {}); } if(invoice_print == 'live_server_print'){ if(type == 'network'){ if (e_printer_ip_address == '') { error = true; $('.printer_ip_address_err_msg').text(Printer_IP_required); $('.printer_ip_address_err_msg_contnr').show(200).delay(6000).hide(200, function () {}); } if (e_printer_port == '') { error = true; $('.printer_port_err_msg').text(Printer_Port_required); $('.printer_port_err_msg_contnr').show(200).delay(6000).hide(200, function () {}); } }else{ if (path_err_msg_contnr == '') { error = true; $('.path_err_msg').text(Path_field_required); $('.path_err_msg_contnr').show(200).delay(6000).hide(200, function () {}); } } if (e_characters_per_line == '') { error = true; $('.characters_per_line_err_msg').text(Characters_Per_Line_required); $('.characters_per_line_err_msg_contnr').show(200).delay(6000).hide(200, function () {}); } if (print_server_url_invoice == '') { error = true; $('.print_server_url_err_msg').text(Path_field_required); $('.print_server_url_err_msg_err_msg_contnr').show(200).delay(6000).hide(200, function () {}); } } let form_data = $('#add_printer_form').serialize(); let edit_id = $('#edit_id').val(); if(error == false){ if(edit_id){ $.ajax({ type: "POST", url: base_url+"Printer/addEditPrinter/"+edit_id, data: form_data, dataType: "JSON", success: function (response) { if(response.status == 'success'){ $("#addPrinters").modal('hide'); $('.ajax-modal-msg').html(`${update_success_msg}`); resetFields(); setTimeout(function(){ $('.ajax-modal-msg').html(""); }, 3000); fatchAllPrinters(); } } }); }else{ $.ajax({ type: "POST", url: base_url+"Printer/addEditPrinter", data: form_data, dataType: "JSON", success: function (response) { if(response.status == 'success'){ let printer_html = `<option>Select</option>`; $.each(response.data, function (i, v) { printer_html += `<option value="${v.id}">${v.title}</option>`; }); $("#counter_printer_id").html(printer_html); $("#counter_printer_id").val(response.printer_id).change(); $("#addPrinters").modal('hide'); $('.ajax-modal-msg').html(`${insert_success_msg}`); resetFields(); setTimeout(function(){ $('.ajax-modal-msg').html(""); }, 3000); fatchAllPrinters(); } } }); } } } } }); }); // Edit Printer Data $(document).on('click', '.edit_printr_item', function(e){ e.preventDefault(); let himSelf = $(this); $.ajax({ url: base_url + "Master/checkAccess", method: "GET", async: false, dataType: 'json', data: { controller: "14", function: "edit" }, success: function (response) { if (response == false) { Swal.fire({ title: warning+" !", text: no_permission_for_this_module, showDenyButton: false, showCancelButton: false, confirmButtonText: ok, }); } else { $('.modal_title').text(Edit_Printer); let item_id = himSelf.attr('data_id'); $("#addPrinters").modal('show'); $.ajax({ type: "POST", url: base_url+"Printer/editPrinter", data: { item_id: item_id }, success: function (response) { if(response.status == 'success'){ $('#edit_id').val(response.data.id); $('.e_title').val(response.data.title); $('.e_characters_per_line').val(response.data.characters_per_line); $('.e_printer_ip_address').val(response.data.printer_ip_address); $('.e_printer_port').val(response.data.printer_port); $('.e_path').val(response.data.path); $('.e_type').html('').html(` <option ${response.data.type == 'network' ? 'selected' : '' } value="network">${network_printer}</option> <option ${response.data.type == 'windows' ? 'selected' : '' } value="windows">${windows_printer}</option> `); $('#invoice_print').html('').html(` <option ${response.data.invoice_print == 'web_browser' ? 'selected' : '' } value="web_browser">Browser Popup Print</option> <option ${response.data.invoice_print == 'live_server_print' ? 'selected' : '' } value="live_server_print">Direct Print</option> `); $('#print_server_url_invoice').val(response.data.print_server_url_invoice); $('#print_format').html('').html(` <option ${response.data.print_format == 'No Print' ? 'selected' : '' } value="No Print">No Print</option> <option ${response.data.print_format == '56mm' ? 'selected' : '' } value="56mm">Tharmal 56mm</option> <option ${response.data.print_format == '80mm' ? 'selected' : '' } value="80mm">Tharmal 80mm</option> <option ${response.data.print_format == 'A4 Print' ? 'selected' : '' } value="A4 Print">A4 Print</option> <option ${response.data.print_format == 'Half A4 Print' ? 'selected' : '' } value="Half A4 Print">Half A4 Print</option> <option ${response.data.print_format == 'Letter Head' ? 'selected' : '' } value="Letter Head">Letter Head Print</option> `); $('#inv_qr_code_status').html('').html(` <option ${response.data.inv_qr_code_status == 'Enable' ? 'selected' : '' } value="Enable">Enable</option> <option ${response.data.inv_qr_code_status == 'Disable' ? 'selected' : '' } value="Disable">Disable</option> `); $('#qr_code_type').html('').html(` <option ${response.data.qr_code_type == 'Invoice Link' ? 'selected' : '' } value="Invoice Link">Invoice Link QR Code</option> <option ${response.data.qr_code_type == 'Zatca' ? 'selected' : '' } value="Zatca">Zatca QR Code</option> `); $('#fiscal_printer_status').html('').html(` <option ${response.data.fiscal_printer_status == 'ON' ? 'selected' : '' } value="ON">ON</option> <option ${response.data.fiscal_printer_status == 'OFF' ? 'selected' : '' } value="OFF">OFF</option> `); $('#open_cash_drawer').html('').html(` <option ${response.data.open_cash_drawer_when_printing_invoice == 'ON' ? 'selected' : '' } value="ON">ON</option> <option ${response.data.open_cash_drawer_when_printing_invoice == 'OFF' ? 'selected' : '' } value="OFF">OFF</option> `); } } }); } } }); setTimeout(function(){ printFieldHideShow(); }, 500) }); // Reset Trigger to cleane input field old data $(document).on('click', '.reset_trigger', function(){ resetFields(); }); resetFields(); function resetFields(){ $('.e_title').val(''); $('.e_characters_per_line').val(''); $('.e_printer_ip_address').val(''); $('.e_printer_port').val(''); $('.e_path').val(''); $(".e_type" ).trigger("change"); $("#fiscal_printer_status" ).trigger("change"); } // Delete Printer $(document).on('click', '.delete_item', function () { let data_id = $(this).attr('data_id'); $.ajax({ url: base_url + "Master/checkAccess", method: "GET", async: false, dataType: 'json', data: { controller: "14", function: "delete" }, success: function (response) { if (response == false) { Swal.fire({ title: warning+" !", text: no_permission_for_this_module, showDenyButton: false, showCancelButton: false, confirmButtonText: ok, }); } else { Swal.fire({ title: alert + "!", text: are_you_sure, showDenyButton: true, showCancelButton: false, confirmButtonText: yes, denyButtonText: cancel }).then((result) => { /* Read more about isConfirmed, isDenied below */ if (result.isConfirmed) { $.ajax({ method: "GET", url: base_url+"Printer/deletePrinter/"+data_id, success: function (response) { if(response.status == 'success'){ $('.ajax-modal-msg').html(`${delete_success_msg}`); setTimeout(function(){ $('.ajax-modal-msg').html(""); }, 3000); fatchAllPrinters(); } } }); } }); } } }); }); // Assign Printer $(document).on('click', '.allAssignPrinterTrigger', function(e){ e.preventDefault(); $.ajax({ url: base_url + "Master/checkAccess", method: "GET", async: false, dataType: 'json', data: { controller: "21", function: "edit" }, success: function (response) { if (response == false) { Swal.fire({ title: warning+" !", text: no_permission_for_this_module, showDenyButton: false, showCancelButton: false, confirmButtonText: ok, }); } else { $('#allAssignPrinter').modal('show'); $.ajax({ type: "GET", url: base_url+"Printer/listAssignPrinter", success: function (response) { if(response.status == 'success'){ $(".assignerPrinters tbody").html(""); $.each(response.data.cashiers, function (keyC, itemC) { let printer = ''; $.each(response.data.printers, function (keyP, itemP) { printer += `<option ${itemC.printer_id == itemP.id ? 'selected' : '' } value="${itemP.id}"> ${itemP.title} </option>` }); $(".assignerPrinters tbody").append(`<tr data_cashier="${itemC.id}"> <td>${keyC + 1}</td> <td>${itemC.full_name}</td> <td> <div class="form-group"> <select class="form-control select2 on_change_printer" id="cashier_printer" name="cashier_printer"> <option>${select_ln}</option> ${printer} </select> </div> </td> <td> <div class="form-group"> <select class="form-control select2 on_change_cash_drawer" id="open_cash_drawer" name="open_cash_drawer"> <option ${itemC.open_cash_drawer == "No" ? 'selected' : ''} value="No">No</option> <option ${itemC.open_cash_drawer == "Yes" ? 'selected' : ''} value="Yes">Yes</option> </select> </div> </td> </tr>` ); }); $('.select2').select2(); } } }); } } }); }); // Table Dropdown Css $(document).on('click', '.printer_table_trigger .dropdown-toggle', function(){ $('.dropdown-menu-right').css('inset', '0px auto auto -12px'); }); // Change Printer Status $(document).on('change', '.on_change_printer', function (e) { e.preventDefault(); let himSelf = $(this); $.ajax({ url: base_url + "Master/checkAccess", method: "GET", async: false, dataType: 'json', data: { controller: "21", function: "edit" }, success: function (response) { if (response == false) { Swal.fire({ title: warning+" !", text: no_permission_for_this_module, showDenyButton: false, showCancelButton: false, confirmButtonText: ok, }); } else { let cashier_id = himSelf.parent().parent().attr('data_cashier'); let cashier_printer = himSelf.val(); $.ajax({ type: "POST", url: base_url+"Printer/assignPrinter", data: {cashier_id : cashier_id, cashier_printer: cashier_printer}, dataType: "JSON", success: function (response) { if(response.status == 'success'){ if(response.status == 'success'){ toastr['success']((Printer_Change_Successful), ''); } } } }); } } }); }); // Change Cashier Drawer Status $(document).on('change', '.on_change_cash_drawer', function (e) { e.preventDefault(); let himSelf = $(this); $.ajax({ url: base_url + "Master/checkAccess", method: "GET", async: false, dataType: 'json', data: { controller: "21", function: "edit" }, success: function (response) { if (response == false) { Swal.fire({ title: warning+" !", text: no_permission_for_this_module, showDenyButton: false, showCancelButton: false, confirmButtonText: ok, }); } else { let cashier_id = himSelf.parent().parent().attr('data_cashier'); let open_cash_drawer = himSelf.val(); $.ajax({ type: "POST", url: base_url+"Printer/changeCashDrawer", data: {cashier_id : cashier_id, open_cash_drawer: open_cash_drawer}, dataType: "JSON", success: function (response) { if(response.status == 'success'){ toastr['success']((Cash_Drawer_Change_Successful), ''); } } }); } } }); }); });
Save Changes
Cancel / Back
Close ×
Server Info
Hostname: server1.winmanyltd.com
Server IP: 203.161.60.52
PHP Version: 8.3.27
Server Software: Apache
System: Linux server1.winmanyltd.com 4.18.0-553.22.1.el8_10.x86_64 #1 SMP Tue Sep 24 05:16:59 EDT 2024 x86_64
HDD Total: 117.98 GB
HDD Free: 60.06 GB
Domains on IP: N/A (Requires external lookup)
System Features
Safe Mode:
Off
disable_functions:
None
allow_url_fopen:
On
allow_url_include:
Off
magic_quotes_gpc:
Off
register_globals:
Off
open_basedir:
None
cURL:
Enabled
ZipArchive:
Enabled
MySQLi:
Enabled
PDO:
Enabled
wget:
Yes
curl (cmd):
Yes
perl:
Yes
python:
Yes (py3)
gcc:
Yes
pkexec:
Yes
git:
Yes
User Info
Username: eliosofonline
User ID (UID): 1002
Group ID (GID): 1003
Script Owner UID: 1002
Current Dir Owner: 1002