var tabla;

//funcion que se ejecuta al inicio
function init(){
	saldo();
	mostrarform(false);
  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) {
          modificarValoresAnumerico();
					guardaryeditar(e);	
				}
			})
		}
   });

    //cargamos los items al select Cuenta de Banco
	$.post("controladores/cuentabancoControlador.php?op=selectCuentabanco", function(c){
		console.log(c);
    $("#idbancocuenta").html(c);
		//$('#idbancocuenta').selectpicker('refresh');
    buscarcuenta(); //Buscamos la cuenta de caja chica
   });

}

function saldo() {  
	$.post("controladores/registrocajachicaControlador.php?op=saldo",
	function(data,status)
	{
		//alert ('estatus: '+status);
		//console.log("data1 antes "+data1);
		data1=JSON.parse(data);
	//	console.log("data1 "+data1);
	//	console.log("data1.saldo "+data1.saldod);
		$("#saldo").val(number_format(data1.saldod,2));
		$("#saldo1").val(number_format(data1.saldod,2));
		//$("#tasa_euro").val(data1.tasa_euro);
	//	console.log("saldo: "+$("#saldo").val());
//		alert ('Control: '+data1.nrocontrol+' Factura: '+data1.nrofactura);
	});
}

function buscarcuenta() {  
  var select1 		= document.getElementById("idbancocuenta") //El <select>
  //var nombre1 		= select1.options[select1.selectedIndex].innerText; //El texto de la opción seleccionada
   
  //console.log(idalmacen1,nombre1,idalmacen2,nombre2);
  for (var i = 0; i < select1.length; i++) {
      //  Aca haces referencia al "option" actual
    var opt 	  = select1[i];
    var nombre3 = opt.text;
    console.log('i vale: '+i +'Y nombre: '+nombre3);
    if (nombre3=='CAJA CHICA'){
      valor	=i;
      console.log('Lo consiguio i vale: '+i +'Y nombre: '+nombre3);
    }
  }
  $("#idbancocuenta").val(valor+1);
  $("#idbancocuenta").selectpicker('refresh');
}

function buscarTasaDeCambio(){
	idempresa_venta=$("#idempresa_venta").val();
	//alert ('idempresa_venta: '+idempresa_venta);
	$.post("controladores/empresaControlador.php?op=buscarTasaDeCambio",{idempresa_venta : idempresa_venta},
		function(data,status)
		{
			//alert ('estatus: '+status);
			data1=JSON.parse(data);
			$("#tasa_dollar").val(number_format(data1.tasa_dollar,2));
			//$("#tasa_euro").val(data1.tasa_euro);
			console.log("data1.tasa_dollar: "+$("#tasa_dollar").val());
	//		alert ('Control: '+data1.nrocontrol+' Factura: '+data1.nrofactura);
		});
}

function modificarValoresAnumerico(){
	
  $("#monto").val(numero( $("#monto").val()));
  $("#montod").val(numero($("#montod").val()));
	$("#tasa_dollar").val(numero(	$("#tasa_dollar").val()));
};

//funcion limpiar
function limpiar(){
	$('#formulario').data('bootstrapValidator').resetForm(true);
	$("#monto").val("");
  $("#montod").val("");
	$("#idregistrocajachica").val("");
  $("#tasa_dollar").val("");
  $("#idbancocuenta").val("");
  $("#fecha_hora").val("");
  $("#detalle").val("");
 
  //obtenemos la fecha actual
  var now 	  = 	new Date();
  var today   = 	new Date();
  var dd 		  =	("0"+now.getDate()).slice(-2);
  var mm		  =	("0"+(now.getMonth()+1)).slice(-2);
  var yyyy    =   now.getFullYear();
  var today	  =	yyyy+'-'+mm+'-'+dd;
  $(fecha_hora).val(today);
}

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

//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/registrocajachicaControlador.php?op=listar',
			type: "get",
			dataType : "json",
			error:function(e){
				console.log(e.responseText);
			}
		},
    "drawCallback":function(){
			var api 	= this.api();
			var data	= api.column(3).data();
			var data1	= api.column(5).data();
			var data2	= api.column(4).data();
			var total	=	0;

			for (var i = 0; i < data.length; i++) {
        var pos     = data1[i].indexOf("Procesado");
				var tipo    = data2[i];
        var palabra = data1[i].substring(pos,pos+9)
			  console.log('data: '+data[i]+' data1: '+data1[i]+' posicion: '+pos+' palabra: '+palabra)
        if (palabra=='Procesado'){
					if (tipo=='ABONO'){
						total 	= total+numero(data[i]);
					}else{
						total 	= total-numero(data[i]);
					}
        }
      }
			total		= number_format(total*1,2);
			$(api.column(0).footer()).html('Total:');
			$(api.column(3).footer()).html(total);
			
	  	}, 
		"bDestroy":true,
		"iDisplayLength":-1,//paginacion
		"order":[[1,"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/registrocajachicaControlador.php?op=guardaryeditar",
    type: "POST",
    data: formData,
    contentType: false,
    processData: false,

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

  limpiar();
}

function mostrar(idregistrocajachica){
	$.post("controladores/registrocajachicaControlador.php?op=mostrar",{idregistrocajachica : idregistrocajachica},
		function(data,status)
		{
			data=JSON.parse(data);
			mostrarform(true);
      /* $("#monto").val("");
      $("#montod").val("");
      $("#idregistrocajachica").val("");
      $("#tasa_dollar").val("");
      $("#idbancocuenta").val("");
      $("#fecha_hora").val("");
      $("#detalle").val(""); */
			$("#monto").val(number_format(data.monto,2));
      $("#montod").val(number_format(data.montod,2));
			$("#idregistrocajachica").val(data.idregistrocajachica);
      $("#idbancocuenta").val(data.idbancocuenta);
      $("#idbancocuenta").selectpicker('refresh');
			$("#tiporegistro").val(data.tiporegistro);
      $("#tiporegistro").selectpicker('refresh');
      $("#fecha_hora").val(data.fecha);
      $("#detalle").val(data.detalle);
      $("#tasa_dollar").val(data.tasa);
		})
}


//funcion para desactivar
function eliminar(idregistrocajachica){
	bootbox.confirm("¿Esta seguro de eliminar este dato?", function(result){
		if (result) {

			$.post("controladores/registrocajachicaControlador.php?op=eliminar", {idregistrocajachica : idregistrocajachica }, function(e){
				bootbox.alert(e);
				tabla.ajax.reload();
			});
		}
	})
}


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

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


init();