var renglon_selecto = 0;
var factura_seleccionada=0;

function habilita_serie()
{
	if($("#cbxSerie").prop("checked"))
	{
		$("#txtSerie").prop("disabled",false)
	}
	else
	{
		$("#txtSerie").prop("disabled",true)
	}

}

function habilita_folio()
{
	if($("#cbxFolio").prop("checked"))
	{
		$("#txtFolio").prop("disabled",false)
	}
	else
	{
		$("#txtFolio").prop("disabled",true)
	}

}

function habilita_adeudo()
{
	if($("#cbxAdeudo").prop("checked"))
	{
		$("#txtAdeudo").prop("disabled",false)
	}
	else
	{
		$("#txtAdeudo").prop("disabled",true)
	}

}

function habilita_fecha()
{
	if($("#cbxFecha").prop("checked"))
	{
		$("#txtFechaInicio").prop("disabled",false)
		$("#txtFechaFin").prop("disabled",false)
	}
	else
	{
		$("#txtFechaInicio").prop("disabled",true)
		$("#txtFechaFin").prop("disabled",true)
	}
}

function habilita_fecha2()
{
	if($("#cbxFecha2").prop("checked"))
	{
		$("#txtFechaInicio2").prop("disabled",false)
		$("#txtFechaFin2").prop("disabled",false)
	}
	else
	{
		$("#txtFechaInicio2").prop("disabled",true)
		$("#txtFechaFin2").prop("disabled",true)
	}
}




function regresar_detalle()
{
	$("#contenedorOperacion").hide();
	$("#contenidoPrincipal").show();

}

function detalle()
{
	if(factura_seleccionada==0){
		swal.fire({
				icon: 'warning',
				title: 'Seleccione una factura de la tabla.'
			})
			return;
	}

	window.open("factura.php?id_f="+factura_seleccionada);
}




function buscar()
{
	factura_seleccionada=0;	
	var serie_valor = $("#txtSerie").val();
	var folio_valor = $("#txtFolio").val();
	var fechaIni_valor = $("#txtFechaInicio").val();
	var fechaFin_valor = $("#txtFechaFin").val();
	var fechaIni_valor2 = $("#txtFechaInicio2").val();
	var fechaFin_valor2 = $("#txtFechaFin2").val();	

	var control_serie = 0;
	var control_folio = 0;
	var control_fecha1 = 0;
	var control_fecha2 = 0;
	var activa = 0;
	var cancelada = 0;
	var reproceso = 0;
	var limit = 0;
	var ordenamiento=0;

	if($("#cbxSerie").prop("checked"))
	{
		if(serie_valor=="")
		{
			swal.fire({
				icon: 'warning',
				title: "Ingrese serie.",
				confirmButtonColor: '#28a745'
			});
			return;
		}
		control_serie=1;
	}

	if($("#cbxFolio").prop("checked"))
	{
		if(folio_valor=="")
		{
			swal.fire({
				icon: 'warning',
				title: "Ingrese el Folio.",
				confirmButtonColor: '#28a745'
			});
			return;
		}
		control_folio=1;
	}
	
	if($("#cbxFecha").prop("checked"))
	{
		if(fechaIni_valor=="")
		{
			swal.fire({
				icon: 'warning',
				title: "Ingrese fecha contable  inicial.",
				confirmButtonColor: '#28a745'
			});
			return;
		}

		if(!isValidDate(fechaIni_valor))
		{
			swal.fire({
				icon: 'warning',
				title: "Fecha contable inicial incorrecta.",
				confirmButtonColor: '#28a745'
			});
			return;
		}

		if(fechaFin_valor=="")
		{
			swal.fire({
				icon: 'warning',
				title: "Ingrese fecha contable final.",
				confirmButtonColor: '#28a745'
			});
			return;
		}

		if(!isValidDate(fechaFin_valor))
		{
			swal.fire({
				title: "Fecha contable final incorrecta",
				confirmButtonColor: '#28a745'
			});
			return;
		}
		control_fecha1=1;
	}

	if($("#cbxFecha2").prop("checked"))
	{
		if(fechaIni_valor2=="")
		{
			swal.fire({
				icon: 'warning',
				title: "Ingrese fecha Registro inicial.",
				confirmButtonColor: '#28a745'
			});
			return;
		}

		if(!isValidDate(fechaIni_valor2))
		{
			swal.fire({
				icon: 'warning',
				title: "Fecha Registro inicial incorrecta.",
				confirmButtonColor: '#28a745'
			});
			return;
		}

		if(fechaFin_valor2=="")
		{
			swal.fire({
				icon: 'warning',
				title: "Ingrese fecha de registro final.",
				confirmButtonColor: '#28a745'
			});
			return;
		}

		if(!isValidDate(fechaFin_valor2))
		{
			swal.fire({
				title: "Fecha de registro final incorrecta",
				confirmButtonColor: '#28a745'
			});
			return;
		}
		control_fecha2=1;
	}

	if($("#cbxActiva").prop("checked"))
	{
		activa=1;
	}

	if($("#cbxCancelada").prop("checked"))
	{
		cancelada=1;
	}

	if($("#cbxReproceso").prop("checked"))
	{
		reproceso=1;
	}

	if($("#cbxLimit").prop("checked"))
	{
		limit=1;
	}
	
	var parametros={
		"limit" : limit,	
		"fecha_inicio" : fechaIni_valor ,
		"fecha_fin" : fechaFin_valor ,
		"fecha_inicio2" : fechaIni_valor2 ,
		"fecha_fin2" : fechaFin_valor2 ,
		"activa" : activa ,
		"cancelada" : cancelada ,
		"reproceso" : reproceso ,
		"serie" : control_serie ,
		"id_serie" : serie_valor ,
		"folio" : control_folio ,
		"id_folio" : folio_valor ,	
		"fecha1" :control_fecha1,
		"fecha2" :control_fecha2,
		"ordenamiento" :ordenamiento
	};

	$.ajax(
	{
		data:  parametros,
		url:   'actualiza_facturas.php',
		type:  'post',
		beforeSend: function () 
		{
			$("#tablaContenido").html("Procesando, espere por favor...");
		},
		success:  function (response) 
		{
			$("#tablaContenido").html(response);
			$("#tablaTransacciones").DataTable({
				language: {
			        "decimal": "",
			        "emptyTable": "No hay información",
			        "info": "Mostrando _START_ a _END_ de _TOTAL_ Facturas",
			        "infoEmpty": "Mostrando 0 a 0 de 0 Facturas",
			        "infoFiltered": "(Filtrado de _MAX_ Facturas totales)",
			        "infoPostFix": "",
			        "thousands": ",",
			        "lengthMenu": "Mostrar _MENU_ Facturas",
			        "loadingRecords": "Cargando...",
			        "processing": "Procesando...",
			        "search": "Buscar:",
			        "zeroRecords": "Sin resultados encontrados",
			        "paginate": {
			            "first": "Primero",
			            "last": "Ultimo",
			            "next": "Siguiente",
			            "previous": "Anterior"
			        }
			}});					
		}
	});
}

function pantalla_reenvio(id_factura,correo){	
		var parametros={
			     "correo":correo		
		};
		
		var input="";

		$.ajax({
			async: false,
			data: parametros,
			url: 'reenvio_correo_pantalla.php',
			type: 'post',
			beforeSend: function () 
			{
				
			},
			success:  function (response) 
			{	
				input=response;	

			}
		});
	if(input!=0){
			  (async () => {
				  
				const { value: formValues } = await 
			  	swal.fire({
					title: 'REENVIO DE CORREO FACTURA:'+id_factura,
			    	html:input,
			    	showCancelButton: true,
					confirmButtonColor: '#28a745',
					cancelButtonColor: '#dc3545',
					confirmButtonText: 'Agregar',
					cancelButtonText: 'Cancelar',
					customClass: 'swal-wide',
					focusConfirm: false,
					allowOutsideClick: false,
					closeOnClickOutside: false,
			    	preConfirm: () => {
						return [ 	
							document.getElementById("txtCorreo").value,
						]
					}

				})

			  if (formValues) 
			  {
				var text = formValues + '';
				//const myArray = text.split(",");
				var correo2 = text;			
					
				var parametros = {
					"id_factura":id_factura,
					"correo":correo2
				};

				 $.ajax({		
					data:  parametros,
					url:   'reenvio_factura.php',
					type:  'get',
					beforeSend: function () {
							
					},
					success:  function (response) {   
						Swal.fire({
						  position: 'center',
						  icon: 'success',
						  title: response,
						  showConfirmButton: false,
						  timer: 1500
						})
						return;			 
					}
				});						
			  }
			  	 
			  })()
			  }
}

function selecciona_renglon(renglon)
{
    $(".renglon_factura").css("backgroundColor","");
    $(".renglon_factura").css("font-weight","lighter");
    $("#"+renglon.id).css("backgroundColor","#4DAE4C");  
    $("#"+renglon.id).css("font-weight","bold");

	renglon_selecto = renglon;
	factura_seleccionada = renglon.id;
}

function seleccionar_tipo_reporte()
{
	swal.fire
	({
		title: 'Seleccione el tipo de reporte:',
		input: 'select',
		inputOptions:{ 1: "PDF", 2: "Excel"},
		showCancelButton: true,
		confirmButtonColor: '#35A824',
		cancelButtonColor: '#d33',
		confirmButtonText: 'Generar',
		cancelButtonText: 'Cancelar',
		allowOutsideClick: false,
		allowEscapeKey: false,
		allowEnterKey: false,					 
		}).then(opc => {
			if (opc.value == 1) 
			{			           
			   generar_reporte_factura(1);
			}
			if (opc.value == 2)
			{
				generar_reporte_factura(2);
			}
	});
}

function generar_reporte_factura(opc)
{
	var activa = 0;
	var cancelada = 0;
	var pendiente = 0;

	var fecha_contable = 0;
	var fecha_registro = 0;

	var fecha_contable_inicial = $("#txtFechaInicio").val();
	var fecha_contable_final = $("#txtFechaFin").val();

	var fecha_registro_inicial = $("#txtFechaInicio2").val();
	var fecha_registro_final = $("#txtFechaFin2").val();

	var serie = 0;
	var serie_valor = $("#txtSerie").val();

	var folio = 0;
	var folio_valor = $("#txtFolio").val();

	var limit = 0;

	if ($("#cbxActiva").prop("checked"))
	{
		activa = 1;
	}

	if ($("#cbxCancelada").prop("checked"))
	{
		cancelada = 1;
	}

	if ($("#cbxPendiente").prop("checked"))
	{
		pendiente = 1;
	}

	if ($("#cbxFecha").prop("checked"))
	{
		fecha_contable = 1;
	}

	if ($("#cbxFecha2").prop("checked"))
	{
		fecha_registro = 1;
	}

	if ($("#cbxSerie").prop("checked"))
	{
		serie = 1;
	}

	if ($("#cbxFolio").prop("checked"))
	{
		folio = 1;
	}
		
	if ($("#cbxLimit").prop("checked"))
	{
		limit = 1;
	}

	if (fecha_contable == 1)
	{
		if (!isValidDate(fecha_contable_inicial))
		{
			swal.fire
			({
				icon: 'warning',
				title: 'Fecha contable inicial incorrecta.'
			})
			return;
		}

		if (!isValidDate(fecha_contable_final))
		{
			swal.fire
			({
				icon: 'warning',
				title: 'Fecha contable final incorrecta.'
			})
			return;
		}
	}

	if (fecha_registro == 1)
	{
		if (!isValidDate(fecha_registro_inicial))
		{
			swal.fire
			({
				icon: 'warning',
				title: 'Fecha registro inicial incorrecta.'
			})
			return;
		}

		if (!isValidDate(fecha_registro_final))
		{
			swal.fire
			({
				icon: 'warning',
				title: 'Fecha registro final incorrecta.'
			})
			return;
		}
	}

	if (serie == 1 && serie_valor == "")
	{
		swal.fire
		({
			icon: 'warning',
			title: 'Ingrese una Serie.'
		})
		return;
	}

	if (folio == 1 && folio_valor == "")
	{
		swal.fire
		({
			icon: 'warning',
			title: 'Ingrese un folio.'
		})
		return;
	}

	var parametros =
	{
		"activa": activa,
		"cancelada": cancelada,
		"pendiente": pendiente,
		"fecha_contable": fecha_contable,	
		"fecha_contable_inicial": fecha_contable_inicial,
		"fecha_contable_final": fecha_contable_final,
		"fecha_registro": fecha_registro,
		"fecha_registro_inicial": fecha_registro_inicial,
		"fecha_registro_final": fecha_registro_final,
		"serie": serie,
		"serie_valor": serie_valor,
		"folio": folio,
		"folio_valor": folio_valor,
		"limit": limit
	};
	
	if (opc == 1)
	{
		window.open("reporte_facturas_pdf.php?"
		+ "&activa=" + activa 
		+ "&cancelada=" + cancelada 
		+ "&pendiente=" + pendiente 
		+ "&fecha_contable" + fecha_contable
		+ "&fecha_contable_inicial=" + fecha_contable_inicial 
		+ "&fecha_contable_final=" + fecha_contable_final 
		+ "&fecha_registro" + fecha_contable
		+ "&fecha_registro_inicial=" + fecha_registro_inicial 
		+ "&fecha_registro_final=" + fecha_registro_final 
		+ "&serie=" + serie 
		+ "&serie_valor=" + serie_valor 
		+ "&folio=" + folio 
		+ "&folio_valor=" + folio_valor 
		+ "&limit=" + limit );
	}

	if (opc == 2)
	{
		window.open("reporte_facturas_excel.php?"
		+ "&activa=" + activa 
		+ "&cancelada=" + cancelada 
		+ "&pendiente=" + pendiente 
		+ "&fecha_contable" + fecha_contable
		+ "&fecha_contable_inicial=" + fecha_contable_inicial 
		+ "&fecha_contable_final=" + fecha_contable_final 
		+ "&fecha_registro" + fecha_contable
		+ "&fecha_registro_inicial=" + fecha_registro_inicial 
		+ "&fecha_registro_final=" + fecha_registro_final 
		+ "&serie=" + serie 
		+ "&serie_valor=" + serie_valor 
		+ "&folio=" + folio 
		+ "&folio_valor=" + folio_valor 
		+ "&limit=" + limit );
	}
}