Tul xxx Tul
User / IP
:
216.73.216.217
Host / Server
:
45.84.207.204 / aircan.me
System
:
Linux lt-bnk-web1726.main-hosting.eu 5.14.0-611.36.1.el9_7.x86_64 #1 SMP PREEMPT_DYNAMIC Tue Mar 3 11:23:52 EST 2026 x86_64
Command
|
Upload
|
Create
Mass Deface
|
Jumping
|
Symlink
|
Reverse Shell
Ping
|
Port Scan
|
DNS Lookup
|
Whois
|
Header
|
cURL
:
/
home
/
u931257429
/
domains
/
aircan.me
/
public_html
/
appleaccesorios
/
Viewing: compras.php
<?php require_once('class/class.php'); $accesos = ['administradorG', 'administradorS', 'secretaria']; validarAccesos($accesos) or die(); ###################### DETALLE DE IMPUESTO ###################### $imp = new Login(); $imp = $imp->ImpuestosPorId(); $NomImpuesto = (empty($imp) ? "Impuesto" : $imp[0]['nomimpuesto']); $ValorImpuesto = (empty($imp) ? "0.00" : $imp[0]['valorimpuesto']); ###################### DETALLE DE IMPUESTO ###################### ?> <!DOCTYPE html> <html dir="ltr" lang="en"> <head> <meta http-equiv="content-type" content="text/html; charset=UTF-8"> <meta charset="utf-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta charset="utf-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width, initial-scale=1"> <meta name="description" content=""> <meta name="author" content="Ing. Ruben Chirinos"> <!-- Favicon icon --> <link rel="icon" type="image/png" sizes="16x16" href="assets/images/favicon.png"> <title></title> <!-- Menu CSS --> <link href="assets/plugins/bower_components/sidebar-nav/dist/sidebar-nav.min.css" rel="stylesheet"> <!-- toast CSS --> <link href="assets/plugins/bower_components/toast-master/css/jquery.toast.css" rel="stylesheet"> <!-- Datatables CSS --> <link rel="stylesheet" type="text/css" href="assets/plugins/datatables/datatables.css"> <link rel="stylesheet" type="text/css" href="assets/plugins/datatables/custom_dt_html5.css"> <link rel="stylesheet" type="text/css" href="assets/plugins/datatables/dt-global_style.css"> <!-- Sweet-Alert --> <link rel="stylesheet" href="assets/css/sweetalert.css"> <!-- animation CSS --> <link href="assets/css/animate.css" rel="stylesheet"> <!-- needed css --> <link href="assets/css/style.css" rel="stylesheet"> <!-- color CSS --> <link href="assets/css/default.css" id="theme" rel="stylesheet"> <!-- color alert --> <link rel="stylesheet" type="text/css" href="assets/css/alert.css"> <!-- checkbox --> <link rel="stylesheet" type="text/css" href="assets/css/forms/theme-checkbox-radio.css"> <link rel="stylesheet" type="text/css" href="assets/css/forms/switches.css"> <!-- HTML5 Shim and Respond.js IE8 support of HTML5 elements and media queries --> <!-- WARNING: Respond.js doesn't work if you view the page via file:// --> <!--[if lt IE 9]> <script src="https://oss.maxcdn.com/libs/html5shiv/3.7.0/html5shiv.js"></script> <script src="https://oss.maxcdn.com/libs/respond.js/1.4.2/respond.min.js"></script> <![endif]--> </head> <body onLoad="muestraReloj();" class="fix-header"> <!-- ============================================================== --> <!-- Preloader - style you can find in spinners.css --> <!-- ============================================================== --> <div class="preloader"> <svg class="circular" viewBox="25 25 50 50"> <circle class="path" cx="50" cy="50" r="20" fill="none" stroke-width="2" stroke-miterlimit="10" /> </svg> </div> <!-- ============================================================== --> <!-- Main wrapper - style you can find in pages.scss --> <!-- ============================================================== --> <div id="main-wrapper" data-layout="vertical" data-navbarbg="skin6" data-sidebartype="full" data-boxed-layout="full" data-boxed-layout="boxed" data-header-position="fixed" data-sidebar-position="fixed" class="mini-sidebar"> <!--############################## MODAL PARA VER DETALLE DE COMPRA ######################################--> <div id="myModalDetalle" class="modal fade" tabindex="-1" role="dialog" aria-labelledby="myModalLabel" aria-hidden="true"> <div class="modal-dialog modal-xl"> <div class="modal-content"> <div class="modal-header bg-danger"> <h4 class="modal-title text-white" id="myModalLabel"><i class="fa fa-align-justify"></i> Detalle de Compra</h4> <button type="button" class="close" data-dismiss="modal" aria-hidden="true"><img src="assets/images/close.png"/></button> </div> <div class="modal-body"> <div id="muestracompramodal"></div> </div> </div> <!-- /.modal-content --> </div> <!-- /.modal-dialog --> </div> <!-- /.modal --> <!--############################## MODAL PARA VER DETALLE DE COMPRA ######################################--> <!-- INICIO DE MENU --> <?php include('menu.php'); ?> <!-- FIN DE MENU --> <!-- ============================================================== --> <!-- Page wrapper --> <!-- ============================================================== --> <div class="page-wrapper"> <!-- ============================================================== --> <!-- Bread crumb and right sidebar toggle --> <!-- ============================================================== --> <div class="page-breadcrumb border-bottom"> <div class="row"> <div class="col-lg-3 col-md-4 col-xs-12 align-self-center"> <h5 class="font-medium text-uppercase mb-0"><i class="fa fa-tasks"></i> Consulta General</h5> </div> <div class="col-lg-9 col-md-8 col-xs-12 align-self-center"> <nav aria-label="breadcrumb" class="mt-2 float-md-right float-left"> <ol class="breadcrumb mb-0 justify-content-end p-0"> <li class="breadcrumb-item">Compras</li> <li class="breadcrumb-item active" aria-current="page">Compras</li> </ol> </nav> </div> </div> </div> <!-- ============================================================== --> <!-- End Bread crumb and right sidebar toggle --> <!-- ============================================================== --> <!-- ============================================================== --> <!-- Container fluid --> <!-- ============================================================== --> <div class="page-content container-fluid"> <!-- ============================================================== --> <!-- Start Page Content --> <!-- ============================================================== --> <?php if ($_SESSION['acceso'] == "administradorG"){ ?> <!-- Row --> <div class="row"> <div class="col-lg-12"> <div class="card"> <div class="card-header bg-danger"> <h4 class="card-title text-white"><i class="fa fa-tasks"></i> Búsqueda de Compras</h4> </div> <div class="form-body"> <div class="card-body"> <form class="form form-material" method="post" action="#" name="comprasxsucursal" id="comprasxsucursal"> <div class="row"> <div class="col-md-12"> <div class="form-group has-feedback"> <label class="control-label">Seleccione Sucursal: <span class="symbol required"></span></label> <i class="fa fa-bars form-control-feedback"></i> <select style="color:#000;font-weight:bold;" name="codsucursal" id="codsucursal" class="form-control" required="" aria-required="true"> <option value=""> -- SELECCIONE -- </option> <?php $sucursal = new Login(); $sucursal = $sucursal->ListarSucursales(); if($sucursal==""){ echo ""; } else { for($i=0;$i<sizeof($sucursal);$i++){ ?> <option value="<?php echo encrypt($sucursal[$i]['codsucursal']); ?>"><?php echo $sucursal[$i]['cuitsucursal'].": ".$sucursal[$i]['nomsucursal']; ?></option> <?php } } ?> </select> </div> </div> </div> <div class="text-right"> <button type="button" id="BotonBusqueda" onClick="BuscaComprasxSucursal()" class="btn btn-dark"><span class="fa fa-search"></span> Realizar Búsqueda</button> </div> </form> </div> </div> </div> </div> </div> <!-- End Row --> <div id="muestra_detalles"></div> <?php } else { ?> <!-- Row --> <div class="row"> <div class="col-lg-12"> <div class="card"> <div class="card-header bg-danger"> <h4 class="card-title text-white"><i class="fa fa-tasks"></i> Compras</h4> </div> <div class="form-body"> <div class="card-body"> <form class="form form-horizontal" method="post" action="#" name="busquedacompras" id="busquedacompras"> <div class="row"> <div class="col-md-2"> <div class="form-group has-feedback"> <label class="control-label">Tipo de Búsqueda: <span class="symbol required"></span></label> <div class="n-chk"> <label class="new-control new-checkbox new-checkbox-rounded checkbox-primary"> <input type="radio" class="new-control-input" name="tipobusqueda" id="tipobusqueda1" value="1" checked="checked"> <span class="new-control-indicator"></span>GENERAL </label> <label class="new-control new-checkbox new-checkbox-rounded checkbox-primary"> <input type="radio" class="new-control-input" name="tipobusqueda" id="tipobusqueda2" value="2"> <span class="new-control-indicator"></span>POR CRITERIO </label> </div> <div class="n-chk"> <label class="new-control new-checkbox new-checkbox-rounded checkbox-primary"> <input type="radio" class="new-control-input" name="tipobusqueda" id="tipobusqueda3" value="3"> <span class="new-control-indicator"></span>POR FECHAS </label> </div> </div> </div> <div class="col-md-4"> <div class="form-group has-feedback"> <label class="control-label">Ingrese Criterio para tu Búsqueda: <span class="symbol required"></span></label> <input style="color:#000;font-weight:bold;" type="text" class="form-control" name="search_criterio" id="search_criterio" onKeyUp="this.value=this.value.toUpperCase();" autocomplete="off" placeholder="Ingrese Criterio para tu Búsqueda"> <i class="fa fa-search form-control-feedback"></i> </div> </div> <div class="col-md-3"> <div class="form-group has-feedback"> <label class="control-label">Ingrese Fecha Desde: <span class="symbol required"></span></label> <input type="text" class="form-control" name="desde" id="desde" onKeyUp="this.value=this.value.toUpperCase();" placeholder="Ingrese Fecha Desde" autocomplete="off" required="" aria-required="true"/> <i class="fa fa-calendar form-control-feedback"></i> </div> </div> <div class="col-md-3"> <div class="form-group has-feedback"> <label class="control-label">Ingrese Fecha Hasta: <span class="symbol required"></span></label> <input type="text" class="form-control" name="hasta" id="hasta" onKeyUp="this.value=this.value.toUpperCase();" placeholder="Ingrese Fecha Hasta" autocomplete="off" required="" aria-required="true"/> <i class="fa fa-calendar form-control-feedback"></i> </div> </div> </div> </form><hr> <div class="row"> <div class="col-md-7"> <div class="btn-group m-b-20" id="exportButtonsContainer"> <a class="btn waves-effect waves-light btn-light" id="pdfMainLink" href="#" target="_blank" rel="noopener noreferrer" data-toggle="tooltip" data-placement="bottom" title="Exportar Pdf"><span class="fa fa-file-pdf-o text-dark"></span> Pdf</a> <a class="btn waves-effect waves-light btn-light" id="excelLink" href="#" data-toggle="tooltip" data-placement="bottom" title="Exportar Excel"><span class="fa fa-file-excel-o text-dark"></span> Excel</a> <a class="btn waves-effect waves-light btn-light" id="wordLink" href="#" data-toggle="tooltip" data-placement="bottom" title="Exportar Word"><span class="fa fa-file-word-o text-dark"></span> Word</a> </div> </div> </div> <div class="table-responsive"> <table id="html5-tables" class="table table-striped table-bordered border display"> <thead> <tr role="row" class="warning-element" style="border-left: 2px solid #ff5050 !important; background: #ece8e9;"> <th>N°</th> <th>N° de Factura</th> <th>Descripción de Proveedor</th> <th>Nº Artic</th> <th>Descontado</th> <th>Subtotal</th> <th>Total <?php echo $NomImpuesto; ?></th> <th>Imp. Total</th> <th>Estado</th> <th>Fecha Emisión</th> <th>Acciones</th> </tr> </thead> <tbody class="BusquedaRapida"> </tbody> </table> </div> </div> </div> </div> </div> </div> <!-- End Row --> <?php } ?> <!-- ============================================================== --> <!-- End PAge Content --> <!-- ============================================================== --> <!-- ============================================================== --> <!-- Right sidebar --> <!-- ============================================================== --> <!-- .right-sidebar --> <!-- ============================================================== --> <!-- End Right sidebar --> <!-- ============================================================== --> </div> <!-- ============================================================== --> <!-- End Container fluid --> <!-- ============================================================== --> <!-- ============================================================== --> <!-- footer --> <!-- ============================================================== --> <footer class="footer text-center"> <i class="fa fa-copyright"></i> <span class="current-year"></span>. </footer> <!-- ============================================================== --> <!-- End footer --> <!-- ============================================================== --> </div> <!-- ============================================================== --> <!-- End Page wrapper --> <!-- ============================================================== --> </div> <!-- ============================================================== --> <!-- End Wrapper --> <!-- ============================================================== --> <!-- ============================================================== --> <!-- All Jquery --> <!-- ============================================================== --> <script src="assets/script/jquery.min.js"></script> <script src="assets/js/bootstrap.js"></script> <!-- apps --> <script src="assets/js/app.min.js"></script> <script src="assets/js/app.init.horizontal-fullwidth.js"></script> <script src="assets/js/app-style-switcher.js"></script> <!-- slimscrollbar scrollbar JavaScript --> <script src="assets/js/perfect-scrollbar.js"></script> <script src="assets/js/sparkline.js"></script> <!--Wave Effects --> <script src="assets/js/waves.js"></script> <!-- Sweet-Alert --> <script src="assets/js/sweetalert-dev.js"></script> <!--Menu sidebar --> <script src="assets/js/sidebarmenu.js"></script> <!--Custom JavaScript --> <script src="assets/js/custom.js"></script> <!-- script jquery --> <script type="text/javascript" src="assets/script/titulos.js"></script> <script type="text/javascript" src="assets/script/script2.js"></script> <script type="text/javascript" src="assets/script/VentanaCentrada.js"></script> <script type="text/javascript" src="assets/script/validation.min.js"></script> <script type="text/javascript" src="assets/script/script.js"></script> <!-- script jquery --> <!-- Calendario --> <link rel="stylesheet" href="assets/calendario/jquery-ui.css" /> <script src="assets/calendario/jquery-ui.js"></script> <script src="assets/script/jscalendario.js"></script> <script src="assets/script/autocompleto.js"></script> <!-- Calendario --> <!-- jQuery --> <script src="assets/plugins/noty/packaged/jquery.noty.packaged.min.js"></script> <script src="assets/plugins/noty/themes/relax.js"></script> <?php if ($_SESSION['acceso'] == "administradorG"){ ?> <script type="text/javascript"> $(document).ready(function(){ $(document).keypress(function(e) { var keycode = (e.keyCode ? e.keyCode : e.which); if (keycode == '13') { $("#BotonBusqueda").trigger("click"); return false; } }); }); </script> <?php } else { ?> <script src="assets/plugins/datatables/datatables.js"></script> <script> $(document).ready(function() { // Función para habilitar o deshabilitar los botones de exportación function toggleExportButtons(enable) { // Ahora solo necesitamos referenciar el nuevo id del botón PDF principal const exportLinks = $('#pdfMainLink, #excelLink, #wordLink'); if (enable) { exportLinks.removeClass('disabled').removeAttr('tabindex'); } else { exportLinks.addClass('disabled').attr('tabindex', '-1'); } // Eliminamos la referencia a pdfDropdownButton ya que no existe } // Función para actualizar los atributos href de los botones de exportación function updateExportButtons() { const tipobusqueda = $("input[name='tipobusqueda']:checked").val(); const search_criterio = $("#search_criterio").val(); const desde = $("#desde").val(); const hasta = $("#hasta").val(); // Base URL para los reportes // Asegúrate de que "VENTASXBUSQUEDA" sea el tipo correcto para este módulo const basePdfUrl = `reportepdf?tipobusqueda=${tipobusqueda}&search_criterio=${search_criterio}&desde=${desde}&hasta=${hasta}&tipo=<?php echo encrypt("COMPRASXBUSQUEDA"); ?>`; const baseExcelUrl = `reporteexcel?tipobusqueda=${tipobusqueda}&search_criterio=${search_criterio}&desde=${desde}&hasta=${hasta}&documento=<?php echo encrypt("EXCEL"); ?>&tipo=<?php echo encrypt("COMPRASXBUSQUEDA"); ?>`; const baseWordUrl = `reporteexcel?tipobusqueda=${tipobusqueda}&search_criterio=${search_criterio}&desde=${desde}&hasta=${hasta}&documento=<?php echo encrypt("WORD"); ?>&tipo=<?php echo encrypt("COMPRASXBUSQUEDA"); ?>`; // Ahora el botón PDF siempre es el principal, no hay dropdown ni simple/general diferenciado $('#pdfMainLink').attr('href', basePdfUrl); // Actualizar enlaces de Excel y Word (siempre son simples) $('#excelLink').attr('href', baseExcelUrl); $('#wordLink').attr('href', baseWordUrl); // Ya no hay necesidad de mostrar/ocultar pdfDropdownGroup o pdfSimpleLink // porque solo hay un botón de PDF visible siempre. } var dataTable = $('#html5-tables').DataTable({ "oLanguage": { "oPaginate": { "sPrevious": '<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-arrow-left"><line x1="19" y1="12" x2="5" y2="12"></line><polyline points="12 19 5 12 12 5"></polyline></svg>', "sNext": '<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-arrow-right"><line x1="5" y1="12" x2="19" y2="12"></line><polyline points="12 5 19 12 12 19"></polyline></svg>' }, "sInfo": "Mostrar _START_ - _END_ de _TOTAL_ Registros", "sInfoEmpty": "Mostrar 0 para 0 de 0 Registros", "sInfoFiltered": "(Resultados de _MAX_ Registros)", "sSearch": '<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-search"><circle cx="11" cy="11" r="8"></circle><line x1="21" y1="21" x2="16.65" y2="16.65"></line></svg>', "sSearchPlaceholder": "Búsqueda...", "sLengthMenu": "Mostrar : _MENU_", "sZeroRecords": "NO SE ENCONTRARON REGISTROS ACTUALMENTE", }, "ajax": { "url": "obtener_json.php?CargaCompras=si", // Asegúrate de que esta URL es la correcta para este módulo "type": "GET", "dataSrc": function(json) { if (json.data && json.data.length > 0) { toggleExportButtons(true); // Activar botones si hay registros } else { toggleExportButtons(false); // Desactivar botones si no hay registros } return json.data; // Devolver los datos a DataTables }, "data": function (d) { const tipobusqueda = $("input[name='tipobusqueda']:checked").val(); const search_criterio = $("#search_criterio").val().trim(); const desde = $("#desde").val(); const hasta = $("#hasta").val(); d.tipobusqueda = tipobusqueda; d.search_criterio = search_criterio; d.desde = desde; d.hasta = hasta; // Si tipobusqueda es 2 o 3 y los criterios están vacíos, no cargar la tabla if (tipobusqueda === '2' && search_criterio === '') { return false; // No enviar la petición AJAX } if (tipobusqueda === '3' && (desde === '' || hasta === '')) { return false; // No enviar la petición AJAX } return d; // Si todo está bien, enviar los datos }, "error": function(xhr, error, thrown) { //console.error("Error en la carga de DataTables:", error, thrown, xhr); $('#html5-tables tbody').html('<tr><td colspan="11" class="text-center text-danger">Error al cargar los datos. Intente de nuevo.</td></tr>'); toggleExportButtons(false); // Desactivar botones en caso de error } }, "columns": [ { "data": 0, "visible": true }, { "data": 1 }, { "data": 2 }, { "data": 3 }, { "data": 4, "render": function(data, type, row) { return '' + data + ''; } }, { "data": 5, "render": function(data, type, row) { return '' + data + ''; } }, { "data": 6, "render": function(data, type, row) { return '' + data + ''; } }, { "data": 7, "render": function(data, type, row) { return '' + data + ''; } }, { "data": 8 }, { "data": 9 }, { "data": 10 } ], "order": [[ 0, "asc" ]], "stripeClasses": [], "lengthMenu": [10, 20, 50, 100, 300, 800, 1500], "pageLength": 10, "processing": true, "serverSide": false, drawCallback: function () { $('.dataTables_paginate > .pagination').addClass('pagination-style-13 pagination-bordered mb-5'); } }); // Evento change para los radio buttons de tipobusqueda $("input[name='tipobusqueda']").change(function() { var selectedValue = $(this).val(); if (selectedValue === '1') { // Si se selecciona 'Mostrar Todos' $("#search_criterio").val('').prop("disabled", true); $("#desde").val('').prop("disabled", true); $("#hasta").val('').prop("disabled", true); toggleExportButtons(false); dataTable.ajax.reload(); } else if (selectedValue === '2') { // Si se selecciona 'Por Criterio' $("#search_criterio").val('').prop("disabled", false); $("#desde").val('').prop("disabled", true); $("#hasta").val('').prop("disabled", true); toggleExportButtons(false); dataTable.clear().draw(); } else if (selectedValue === '3') { // Si se selecciona 'Por Fechas' $("#search_criterio").val('').prop("disabled", true); $("#desde").val('').prop("disabled", false); $("#hasta").prop("disabled", false); toggleExportButtons(false); dataTable.clear().draw(); } updateExportButtons(); }); // Evento 'keyup' para search_criterio $("#search_criterio").on('keyup', function() { const tipobusqueda = $("input[name='tipobusqueda']:checked").val(); const searchValue = $(this).val().trim(); if (tipobusqueda === '2') { if (searchValue.length >= 3) { // Puedes ajustar este número toggleExportButtons(false); dataTable.ajax.reload(); } else if (searchValue.length === 0) { toggleExportButtons(false); dataTable.clear().draw(); } } updateExportButtons(); }); // Evento 'change' para desde y hasta $("#desde, #hasta").on('change', function() { const tipobusqueda = $("input[name='tipobusqueda']:checked").val(); const desde = $("#desde").val(); const hasta = $("#hasta").val(); if (tipobusqueda === '3') { if (desde !== '' && hasta !== '') { toggleExportButtons(false); dataTable.ajax.reload(); } else { toggleExportButtons(false); dataTable.clear().draw(); } } updateExportButtons(); }); // --- Lógica de inicialización al cargar la página --- updateExportButtons(); const initialTipobusqueda = $("input[name='tipobusqueda']:checked").val(); if (initialTipobusqueda === '1') { $("#search_criterio").val('').prop("disabled", true); $("#desde").val('').prop("disabled", true); $("#hasta").val('').prop("disabled", true); // La carga inicial de DataTables se encargará de activar los botones si hay datos. } else { // Si inicia en tipo 2 o 3, deshabilitar campos y botones, y limpiar la tabla. $("#search_criterio").val('').prop("disabled", true); $("#desde").val('').prop("disabled", true); $("#hasta").val('').prop("disabled", true); if (initialTipobusqueda === '2') { $("#search_criterio").prop("disabled", false); } else if (initialTipobusqueda === '3') { $("#desde").prop("disabled", false); $("#hasta").prop("disabled", false); } toggleExportButtons(false); dataTable.clear().draw(); } }); </script> <?php } ?> <!-- jQuery --> </body> </html>
Coded With 💗 by
0x6ick