var tabla;

//funcion que se ejecuta al inicio
function init(){
	mostrarform(false);
	listar();
	buscarEmpresa();

	$("#formulario").on("submit",function(e){
		guardaryeditar(e);
	})
	
	$("#formulario1").on("submit",function(e){
	//	modificarValoresAnumerico();
		guardaryeditarVenta(e);
	})

	$("#formulario2").on("submit",function(e){
		modificarValoresAnumerico();
		guardaryeditarTasa(e);
	})

	$("#formulario3").on("submit",function(e){
		modificarValoresAnumerico();
		guardaryeditarImpuesto(e);
	})

	$("#formulario5").on("submit",function(e){
		modificarValoresAnumerico();
		guardaryeditarDatosadicional(e);
	})

	$("#formulario6").on("submit",function(e){
		modificarValoresAnumerico();
		guardaryeditarsucursal(e);
	})

	$("#imagenmuestra").hide();

	var checkbox = document.getElementById('impuestoart18');
	checkbox.addEventListener( 'change', function() {
	//checkbox.value='no';
	if(this.checked) {
		 //checkbox.value='si';
		 $("#impuestoart18").val("si");
	}else{
		 $("#impuestoart18").val("no");
	}
	console.log('checkbox.value- impuestoart18: '+checkbox.value);
	});

	var checkboxp = document.getElementById('paisdeorigen');
	checkboxp.addEventListener( 'change', function() {
	//checkbox.value='no';
	if(this.checked) {
		 //checkbox.value='si';
		 $("#paisdeorigen").val("si");
	}else{
		 $("#paisdeorigen").val("no");
	}
	console.log('checkbox.value- paisdeorigen: '+checkboxp.value);
	});

	$("#btnActualizarPrecio").on("click",function(e){
		/* Evitamos el envío real del formulario */
			e.preventDefault();
			modificarValoresAnumerico(); 
			ActualizarPrecio();
	});
	$("#btnActualizarCosto").on("click",function(e){
		/* Evitamos el envío real del formulario */
			e.preventDefault();
			modificarValoresAnumerico(); 
			ActualizarCosto();
	});
	$("#btnActualizarArt18").on("click",function(e){
		/* Evitamos el envío real del formulario */
			e.preventDefault();
			modificarValoresAnumerico(); 
			ActualizarArt18();
	});
	$("#btnActualizarTodo").on("click",function(e){
		/* Evitamos el envío real del formulario */
			e.preventDefault();
			modificarValoresAnumerico(); 
			ActualizarTodo();
	});

	
	//cargamos los items al select cliente
	$.post("controladores/usuarioControlador.php?op=selectusuario", function(r){
		$("#idusuario").html(r);
		$("#idusuario").val(0);
		$('#idusuario').selectpicker('refresh');
	});

	//cargamos los items al select cliente
	$.post("controladores/usuarioControlador.php?op=selectusuario", function(r){
		$("#idusuario2").html(r);
		$("#idusuario2").val(0);
		$('#idusuario2').selectpicker('refresh');
	});

	//cargamos los items al select cliente
	$.post("controladores/usuarioControlador.php?op=selectusuario", function(r){
		$("#idusuarios").html(r);
		$("#idusuarios").val(0);
		$('#idusuarios').selectpicker('refresh');
	});

	//cargamos los items al select cliente
	$.post("controladores/usuarioControlador.php?op=selectusuario", function(r){
		$("#idusuario2s").html(r);
		$("#idusuario2s").val(0);
		$('#idusuario2s').selectpicker('refresh');
	});
	
}

//funcion limpiar
function limpiar(){
	$("#nombre").val("");
  $("#num_documento").val("");
	$("#direccion").val("");
	$("#telefono").val("");
	$("#licenciadelicor").val("");
	$("#email").val("");
	$("#logo").val("");
	$("#imagenmuestra").attr("src","");
	$("#imagenactual").val("");
	$("#idempresa").val("");
	//sucursal
	$("#nombres").val("");
  $("#num_documentos").val("");
	$("#direccions").val("");
	$("#telefonos").val("");
	$("#licenciadelicors").val("");
	$("#emails").val("");
	/* $("#logos").val("");
	$("#imagenmuestras").attr("src","");
	$("#imagenactuals").val("");
	$("#idempresas").val(""); */

	// Venta
	$("#num_factura").val("");
	$("#num_control").val("");
	$("#num_pedido").val("");
	$("#num_notacredito").val("");
	$("num_notaentrega").val("");
	$("numcontrol_notaentrega").val("");
	$("num_notaentrega2").val("");
	$("numcontrol_notaentrega2").val("");
	$("#idusuario").val(0);
	$('#idusuario').selectpicker('refresh');
	$("#idusuario2").val(0);
	$('#idusuario2').selectpicker('refresh');
	

	// Venta Sucursal
	$("#num_facturas").val("");
	$("#num_controls").val("");
	$("#num_pedidos").val("");
	$("#num_notacreditos").val("");
	$("num_notaentregas").val("");
	$("numcontrol_notaentregas").val("");
	$("num_notaentrega2s").val("");
	$("numcontrol_notaentrega2s").val("");
	$("#idusuarios").val(0);
	$('#idusuarios').selectpicker('refresh');
	// Tasa Cambio
	$("#tasa_dollar").val("");
	$("#idempresa2").val("");
	$("#idempresa_tasacambio").val("");
	$("#tasa_euro").val("");
	//Impuesto
	$("#iva").val("");
	$("#idempresa3").val("");
	$("#idempresa_impuesto").val("");
	$("#porcentajeprecio").val("");
	$("#aduanero").val("");
	$("#impuestoart18").val("no");
	$('#impuestoart18').prop("checked", false);
	//Datos Adicionales
	$("#paisdeorigen").val("no");
	$("#paisdeorigen").prop("checked", false);

}

//funcion para convertir en numerico los valores a a guardar
function modificarValoresAnumerico(){
	//tasa
	var ts 	= $("#tasa_dollar").val();
	var te 	= $("#tasa_euro").val();
	$("#tasa_dollar").val(numero(ts));
	$("#tasa_euro").val(numero(te));
	//Impuesto
	var iv	= $("#iva").val();
	var ad	= $("#aduanero").val();
	var ip  = $("#porcentajeprecio").val();
	$("#iva").val(numero(iv));
	$("#aduanero").val(numero(ad));
	$("#porcentajeprecio").val(numero(ip));
}


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

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

function buscarEmpresa(){
	$.post("controladores/empresaControlador.php?op=buscarEmpresa",
		function(data,status)
		{
			console.log('dataempresa:'+data)
			if (data==1){
				$("#btnagregar").hide();
			}else{
				$("#btnagregar").show();
			}
		});
}



//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/empresaControlador.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/empresaControlador.php?op=guardaryeditar",
     	type: "POST",
     	data: formData,
     	contentType: false,
     	processData: false,

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

//funcion para guardaryeditar
function guardaryeditarVenta(e){
	e.preventDefault();//no se activara la accion predeterminada 
	$("#btnGuardarVenta").prop("disabled",true);
	var formData=new FormData($("#formulario1")[0]);

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

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

	limpiar();
}

//funcion para guardaryeditar
function guardaryeditarVentas(e){
	e.preventDefault();//no se activara la accion predeterminada 
	$("#btnGuardarVenta").prop("disabled",true);
	var formData=new FormData($("#formulario6")[0]);

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

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

	limpiar();
	buscarEmpresa();
}

//funcion para guardaryeditar
function guardaryeditarTasa(e){
	e.preventDefault();//no se activara la accion predeterminada 
	$("#btnGuardarTasaCambio").prop("disabled",true);
	var formData=new FormData($("#formulario2")[0]);

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

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

	limpiar();
}

//funcion para guardaryeditar
function guardaryeditarImpuesto(e){
	e.preventDefault();//no se activara la accion predeterminada 
	$("#btnGuardarTasaCambio").prop("disabled",true);
	var formData=new FormData($("#formulario3")[0]);

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

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

	limpiar();
}

//funcion para guardaryeditar
function guardaryeditarDatosadicional(e){
	e.preventDefault();//no se activara la accion predeterminada 
	$("#btnGuardarTasaCambio").prop("disabled",true);
	var formData=new FormData($("#formulario5")[0]);

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

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

	limpiar();
}

//funcion para guardaryeditar Sucursal
function guardaryeditarsucursal(e){
	e.preventDefault();//no se activara la accion predeterminada 
	$("#btnGuardar").prop("disabled",true);
	var formData=new FormData($("#formulario6")[0]);

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

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

		}
	});
//limpiar();
//buscarEmpresa();
}



//funcion para Actualizar precios, costo y impuestoarticulo18
function ActualizarPrecio(){
	//alert('Actualizar Precio');
	var tasa_dollar 	= $("#tasa_dollar").val();
	bootbox.confirm("¿Esta seguro que quiere actualizar los precios?", function(result){
		if (result) {
			$.post("controladores/empresaControlador.php?op=ActualizarPrecio", {tasa_dollar : tasa_dollar}, function(e){
				bootbox.alert(e);
				mostrarform(false);
    			tabla.ajax.reload();
    			limpiar();
				buscarEmpresa();
			});
		}
	})
	
}

function ActualizarCosto(){
	//alert('Actualizar Precio');
	var tasa_dollar 	= $("#tasa_dollar").val();
	bootbox.confirm("¿Esta seguro que quiere actualizar los costos?", function(result){
		if (result) {
			$.post("controladores/empresaControlador.php?op=ActualizarCosto", {tasa_dollar : tasa_dollar}, function(e){
				bootbox.alert(e);
				mostrarform(false);
    			tabla.ajax.reload();
    			limpiar();
				buscarEmpresa();
			});
		}
	})
	
}

function ActualizarArt18(){
	//alert('Actualizar Precio');
	var tasa_dollar 	= $("#tasa_dollar").val();
	bootbox.confirm("¿Esta seguro que quiere actualizar el impuesto del articulo 18?", function(result){
		if (result) {
			$.post("controladores/empresaControlador.php?op=ActualizarArt18", {tasa_dollar : tasa_dollar}, function(e){
				bootbox.alert(e);
				mostrarform(false);
    			tabla.ajax.reload();
    			limpiar();
				buscarEmpresa();
			});
		}
	})
	
}

function ActualizarTodo(){
	//alert('Actualizar Precio');
	var tasa_dollar 	= $("#tasa_dollar").val();
	bootbox.confirm("¿Esta seguro que quiere actualizar precios, costos y el impuesto art18?", function(result){
		if (result) {
			$.post("controladores/empresaControlador.php?op=ActualizarTodo", {tasa_dollar : tasa_dollar}, function(e){
				bootbox.alert(e);
				mostrarform(false);
    			tabla.ajax.reload();
    			limpiar();
				buscarEmpresa();
			});
		}
	})
	
}


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

			$("#nombre").val(data.nombre);
			$("#tipo_documento").val(data.tipo_documento);
			$("#tipo_documento").selectpicker('refresh');
			$("#num_documento").val(data.num_documento);
			$("#direccion").val(data.direccion);
			$("#telefono").val(data.telefono);
			$("#licenciadelicor").val(data.licenciadelicor);
			$("#email").val(data.email);
			$("#imagenmuestra").show();
			$("#imagenmuestra").attr("src","files/empresas/"+data.imagen);
			$("#imagenactual").val(data.imagen);
			$("#idempresa").val(data.idempresa);
			//venta b.nrocontrolnotacredito,b.nronotaentrega,b.nrocontrolnotaentrega
			$("#num_factura").val(data.nrofactura);
			$("#num_control").val(data.nrocontrol);
			$("#num_pedido").val(data.nropedido);
			$("#num_notacredito").val(data.nronotacredito);
			$("#numcontrol_notacredito").val(data.nrocontrolnotacredito);
			$("#num_notaentrega").val(data.nronotaentrega);
			$("#numcontrol_notaentrega").val(data.nrocontrolnotaentrega);
			$("#num_notaentrega2").val(data.nronotaentrega2);
			$("#numcontrol_notaentrega2").val(data.nrocontrolnotaentrega2);
			$("#idempresa1").val(data.idempresa);
			$("#idempresa_venta").val(data.idempresa_venta);
			$("#idusuario").val(data.idusuario);
			$('#idusuario').selectpicker('refresh');
			$("#idusuario2").val(data.idusuario2);
			$('#idusuario2').selectpicker('refresh');
			//tasa cambio
			$("#tasa_dollar").val(number_format(data.tasa_dollar,2));
			$("#tasa_euro").val(number_format(data.tasa_euro,2));
			$("#idempresa2").val(data.idempresa);
			$("#idempresa_tasacambio").val(data.idempresa_tasacambio);
			//impuesto
			$("#iva").val(number_format(data.iva,2));
			$("#aduanero").val(number_format(data.aduanero,2));
			$("#idempresa3").val(data.idempresa);
			$("#idempresa_impuesto").val(data.idempresa_impuesto);
			$("#porcentajeprecio").val(data.porcentajeprecio);
			if (data.impuestoart18=='si'){
				$('#impuestoart18').prop("checked", true);
				$("#impuestoart18").val("si");
			}else{
				$("#impuestoart18").val("no");
				$('#impuestoart18').prop("checked", false);
			}
			//Datos Adicionales idempresa_datosadicionales 
			$("#idempresa5").val(data.idempresa);
			$("#idempresa_datosadicionales").val(data.idempresa_datosadicionales);
			if (data.paisdeorigen=='si'){
				$("#paisdeorigen").prop("checked", true);
				$("#paisdeorigen").val("si");
			}else{
				$("#paisdeorigen").val("no");
				$("#paisdeorigen").prop("checked", false);
			}

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

					$("#nombres").val(data.nombre);
					$("#tipo_documentos").val(data.tipo_documento);
					$("#tipo_documentos").selectpicker('refresh');
					$("#num_documentos").val(data.num_documento);
					$("#direccions").val(data.direccion);
					$("#telefonos").val(data.telefono);
					$("#licenciadelicors").val(data.licenciadelicor);
					/* $("#emails").val(data.email);
					$("#imagenmuestras").show();
					$("#imagenmuestras").attr("src","files/empresas/"+data.imagen);
					$("#imagenactuals").val(data.imagen); */
					$("#num_facturas").val(data.nrofactura);
					$("#num_controls").val(data.nrocontrol);
					$("#num_pedidos").val(data.nropedido);
					$("#num_notacreditos").val(data.nronotacredito);
					$("#numcontrol_notacreditos").val(data.nrocontrolnotacredito);
					$("#num_notaentregas").val(data.nronotaentrega);
					$("#numcontrol_notaentregas").val(data.nrocontrolnotaentrega);
					$("#num_notaentrega2s").val(data.nronotaentrega2);
					$("#numcontrol_notaentrega2s").val(data.nrocontrolnotaentrega2);
					$("#idempresa_ventas").val(data.idempresa_venta);
					$("#idempresa6").val(data.idempresa);
					$("#idusuarios").val(data.idusuario);
					$('#idusuarios').selectpicker('refresh');
					$("#idusuario2s").val(data.idusuario2);
					$('#idusuario2s').selectpicker('refresh');
					
					
			});
			
	});

	
	
	//Permiso
	$.post("controladores/empresaControlador.php?op=permisos&id="+idempresa, function(r){
	$("#permisos").html(r);
	});
}


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

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

//**  Eventos para dar formato a los numeros que introducen **/

$("#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));
});

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

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

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



init();