var tabla;
function init(){

	listar();
	listar_acta();
        listar_sorteo();

    $.post("../../ajax/usuario.php?op=selectTecnico", function(r){
        if ($.fn.select2 && $('#idtecnico').data('select2')) {
          $('#idtecnico').select2('destroy');
        }
      
        // Actualizar el contenido del select
        $("#idtecnico").html(r);
      
        // Inicializar Select2 nuevamente
        $('#idtecnico').select2({
          theme: 'bootstrap4',
          placeholder: 'Seleccione un Tecnico',
          allowClear: true,
        });
      });
}

function listar(){
	var idtecnico=$("#idtecnico").val();
	tabla=$("#producto").dataTable(
		{
			 "aProcessing": true, //Activamos el procesamiento de datatables
		      "aServerSide": true, //Paginacion y filtrado realizados por el servidor
		      dom: 'Bfrtip', //Definimos los elementos del control de tabla
		      buttons:[
		     /*     'copyHtml5',
		          'excelHtml5',
		          'csvHtml5',
		          // 'pdf',
		           {
	                extend: 'pdfHtml5',
	                exportOptions: {
	                    columns: [ 0, 1, 2,3,4,5 ]
	                	}
            		},*/
            		{
                		extend: 'copyHtml5',
		                exportOptions: {
		                    columns: [ 0, ':visible' ]
		                }
		            },
		            {
		                extend: 'excelHtml5',
		                exportOptions: {
		                    columns: ':visible'
		                }
		            },
		            {
		                extend: 'pdfHtml5',
		                exportOptions: {
		                    columns: [ 0, 1,2, 5,6,7 ]
		                }
		            },
		            'colvis'

		      ],
      		"ajax":{
      			url:"../../ajax/consulta.php?op=listaMovimiento",
      			data:{idtecnico:idtecnico},
      			type:"get",
      			dataType:"json",
      			error:function(e)
			        {
			          console.log(e.responseText);
			        }
      		},
      		"languaje":{
	      			"sProcessing":     "Procesando...",
				    "sLengthMenu":     "Mostrar _MENU_ registros",
				    "sZeroRecords":    "No se encontraron resultados",
				    "sEmptyTable":     "Ningún dato disponible en esta tabla",
				    "sInfo":           "Mostrando registros del _START_ al _END_ de un total de _TOTAL_ registros",
				    "sInfoEmpty":      "Mostrando registros del 0 al 0 de un total de 0 registros",
				    "sInfoFiltered":   "(filtrado de un total de _MAX_ registros)",
				    "sInfoPostFix":    "",
				    "sSearch":         "Buscar:",
				    "sUrl":            "",
				    "sInfoThousands":  ",",
				    "sLoadingRecords": "Cargando...",
				    "oPaginate": {
				        "sFirst":    "Primero",
				        "sLast":     "Último",
				        "sNext":     "Siguiente",
				        "sPrevious": "Anterior"
				    },
				    "oAria": {
				        "sSortAscending":  ": Activar para ordenar la columna de manera ascendente",
				        "sSortDescending": ": Activar para ordenar la columna de manera descendente"
				    }
				   },
				   
      		 "bDestroy":true,
		      "iDisplayLength" :12, //Paginacion
		      "order":[[0,"desc"]] //Ordenar (columna,orden)
				}
		).DataTable();
}

function listar_acta() {
    tabla=$("#list_acta").DataTable({
        "responsive": true,
        "autoWidth": false,
        "ajax": {
            url: '../../ajax/consulta.php?op=listar_acta',
            type: "GET",
            dataType: "json",
            error: function(e) {
                console.error("Error en la solicitud AJAX:", e.responseText);
                alert("No se pudo cargar la tabla. Verifique la consola.");
            }
        },
        "language": {
            "sProcessing": "Procesando...",
            "sLengthMenu": "Mostrar _MENU_ registros",
            "sZeroRecords": "No se encontraron resultados",
            "sEmptyTable": "Ningún dato disponible en esta tabla",
            "sInfo": "Mostrando registros del _START_ al _END_ de un total de _TOTAL_",
            "sInfoEmpty": "Mostrando registros del 0 al 0 de un total de 0",
            "sInfoFiltered": "(filtrado de un total de _MAX_ registros)",
            "sSearch": "Buscar:",
            "oPaginate": {
                "sFirst": "Primero",
                "sLast": "Último",
                "sNext": "Siguiente",
                "sPrevious": "Anterior"
            }
          },
          "bDestroy": true,
           "order": [[0, "desc"]]
    });
}

function listar_sorteo(){
	tabla = $("#sorteo_cliente").dataTable({
		"aProcessing": true,
		"aServerSide": true,
		"paging": false, // 🔴 SIN PAGINACIÓN
		"bLengthChange": false, // 🔴 OCULTA "Mostrar X registros"
		dom: 'Bfrtip',
		buttons: [
			{
				extend: 'copyHtml5',
				exportOptions: { columns: [0, ':visible'] }
			},
			{
				extend: 'excelHtml5',
				exportOptions: { columns: ':visible' }
			},
			{
				extend: 'pdfHtml5',
				exportOptions: { columns: [0, 1, 2, 5, 6, 7] }
			},
			'colvis'
		],
		"ajax": {
			url: "../../ajax/consulta.php?op=lista_sorteo",
			data: {},
			type: "get",
			dataType: "json",
			error: function(e) {
				console.log(e.responseText);
			}
		},
		"languaje": {
			"sProcessing": "Procesando...",
			"sLengthMenu": "Mostrar _MENU_ registros",
			"sZeroRecords": "No se encontraron resultados",
			"sEmptyTable": "Ningún dato disponible en esta tabla",
			"sInfo": "Mostrando registros del _START_ al _END_ de un total de _TOTAL_ registros",
			"sInfoEmpty": "Mostrando registros del 0 al 0 de un total de 0 registros",
			"sInfoFiltered": "(filtrado de un total de _MAX_ registros)",
			"sSearch": "Buscar:",
			"sLoadingRecords": "Cargando...",
			"oPaginate": {
				"sFirst": "Primero",
				"sLast": "Último",
				"sNext": "Siguiente",
				"sPrevious": "Anterior"
			},
			"oAria": {
				"sSortAscending": ": Activar para ordenar la columna de manera ascendente",
				"sSortDescending": ": Activar para ordenar la columna de manera descendente"
			}
		},
		"bDestroy": true,
		"iDisplayLength": -1, // Esto también desactiva la paginación
		"order": [[0, "desc"]]
	}).DataTable();
}

init();