var tabla;

//funcion que se ejecuta al inicio
function init(){
  //mostrarform(false);
  let now 	= 	new Date();
	let today = 	new Date();
	let dd 		=	("0"+now.getDate()).slice(-2);
	let mm		=	("0"+(now.getMonth()+1)).slice(-2);
	let yyyy  =   now.getFullYear();
	today			=	yyyy+'-'+mm+'-'+dd;
	console.log('today: ',today)	
	buscarfecha(today);
	 
	listar();

  $("#btnGuardar").on("click",function(e){
	/* Evitamos el envío real del formulario */
		e.preventDefault(); 
		validar();
		var val = $("#validado").val();
		//console.log(val);
		if (val==1){  
			bootbox.confirm("¿Esta seguro que quiere guardar los dato?", function(result){
				if (result) {
			    let tasa_dollar =	numero($("#tasa_dollar").val());
          $("#tasa_dollar").val(tasa_dollar);
          guardaryeditar(e);	
				}
			})
		}
  });

  $("#tasa_dollar").keyup(function(event) {

      // skip for arrow keys
      if(event.which >= 37 && event.which <= 40){
        event.preventDefault();
      }
      var value  = $(this).val();
      $(this).val(decimal(value));
     
  });

/*	const fecha = new Date();
	const tiempoTranscurrido = Date.now();
	const hoy = new Date(tiempoTranscurrido);
	 const formatoMap = {
		dd: fecha.getDate(),
		mm: fecha.getMonth() + 1,
		yy: fecha.getFullYear().toString().slice(-2),
		yyyy: fecha.getFullYear()
	}; */

	/* const hoy 			= new Date();
	const formatof 	= formatoFecha(hoy, 'yyyy/mm/dd');
	console.log('formatof: ',formatof) */
	//formatof ='2023/02/09';
	//buscarfecha(formatof);


	//console.log('Fecha: ',fecha,' tiempoTranscurrido: ',tiempoTranscurrido,' hoy: ',hoy,' formatof: ',formatof)
}

function formatoFecha(fecha, formato) {
	const map = {
			dd: fecha.getDate(),
			mm: fecha.getMonth() + 1,
			//yy: fecha.getFullYear().toString().slice(-2),
			yyyy: fecha.getFullYear()
	}

	return formato.replace(/dd|mm|yyyy/gi, matched => map[matched])
	//return formato.replace(/dd|mm|yy|yyyy/gi, matched => map[matched])
	//return formato.replace(/yy|yyyy|mm|dd/gi, matched => map[matched])
}

function buscarfecha(fecha){
	$.post("controladores/tasadecambioControlador.php?op=buscarfecha",{fecha : fecha},
		function(data,status)
		{
			console.log('fecha existe: ',data)
			if (data==0){
				//$("#btnagregar").hide();
				//Hay que Actualizar la tasa del dia y Buscamos en la Api.
				//https://s3.amazonaws.com/dolartoday/data.json
				$.getJSON( "https://s3.amazonaws.com/dolartoday/data.json")
					.done(function( data ) {
						console.log( "JSON Data: " , data );
						console.log( 'Tasa de Cambio ', data.USD.sicad2);
						let tasa = number_format(data.USD.sicad2,2);
						mostrarform(true);
						$("#tasa_dollar").val(tasa);
						
					})
					.fail(function( jqxhr, textStatus, error ) {
						var err = textStatus + ", " + error;
						console.log( "Request Failed: " + err );
						mostrarform(true);
						$("#tasa_dollar").val(0);
						
					});	
				
			}else{
				mostrarform(false);
			}
	});
}

//funcion limpiar
function limpiar(){
	$('#formulario').data('bootstrapValidator').resetForm(true);
	$("#idtasadecambio").val("");
	$("#nombre").val("");
	$("#tasa_dollar").val(0);
}

//funcion mostrar formulario
function mostrarform(flag){
	limpiar();
	if(flag){
		$("#listadoregistros").hide();
		$("#formularioregistros").show();
		$("#formularioregistros1").show();
		$("#btnGuardar").prop("disabled",false);
		$("#btnagregar").hide();
	}else{
		$("#listadoregistros").show();
		$("#formularioregistros").hide();
		$("#formularioregistros1").hide();
		$("#btnagregar").hide();
	}
}

//cancelar form
function cancelarform(){
	limpiar();
	mostrarform(false);
}

//funcion listar
function listar(){
	tabla=$('#tbllistado').dataTable({
		"aProcessing": true,//activamos el procedimiento del datatable
		"aServerSide": true,//paginacion y filrado realizados por el server
		dom: 'Bfrtip',//definimos los elementos del control de la tabla
		buttons: [
                  'copyHtml5',
                  'excelHtml5',
                  'csvHtml5',
                  'pdf'
		],
		"ajax":
		{
			url:'controladores/tasadecambioControlador.php?op=listar',
			type: "get",
			dataType : "json",
			error:function(e){
				console.log(e.responseText);
			}
		},
		"bDestroy":true,
		"iDisplayLength":-1,//paginacion
		"order":[[0,"desc"]]//ordenar (columna, orden)
	}).DataTable();
}
//funcion para guardaryeditar
function guardaryeditar(e){
     e.preventDefault();//no se activara la accion predeterminada 
     $("#btnGuardar").prop("disabled",true);
     var formData=new FormData($("#formulario")[0]);

     $.ajax({
     	url: "controladores/tasadecambioControlador.php?op=guardaryeditar",
     	type: "POST",
     	data: formData,
     	contentType: false,
     	processData: false,

     	success: function(datos){
     		bootbox.alert(datos);
				actualizar();
     		//mostrarform(false);
     		//tabla.ajax.reload();
     	}
     });

     limpiar();
}

function mostrar(idtasadecambio){
	$.post("controladores/tasadecambioControlador.php?op=mostrar",{idtasadecambio : idtasadecambio},
		function(data,status)
		{
			data=JSON.parse(data);
			mostrarform(true);

			//$("#nombre").val(data.nombre);
			$("#tasa_dollar").val(data.tasa_dollar);
			$("#idtasadecambio").val(data.idtasadecambio);
		})
}


//funcion para desactivar
function desactivar(idtasadecambio){
	bootbox.confirm("¿Esta seguro de desactivar este dato?", function(result){
		if (result) {
			$.post("controladores/tasadecambioControlador.php?op=desactivar", {idtasadecambio : idtasadecambio}, function(e){
				bootbox.alert(e);
				tabla.ajax.reload();
			});
		}
	})
}

function activar(idtasadecambio){
	bootbox.confirm("¿Esta seguro de activar este dato?" , function(result){
		if (result) {
			$.post("controladores/tasadecambioControlador.php?op=activar" , {idtasadecambio : idtasadecambio}, function(e){
				bootbox.alert(e);
				tabla.ajax.reload();
			});
		}
	})
}

function actualizar(){
	location.reload();
}

init();