var tabla;
//funcion que se ejecutan al inicio
$("#idbanco").change(marcarBanco);

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

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

    //cargamos los items al Select Banco
	$.post("controladores/cuentabancoControlador.php?op=selectBanco", function(r){
		$("#idbanco").html(r);
		$("#idbanco").selectpicker('refresh');
	});
	$("#imagenmuestra").hide();
}

//funcion limpiar
function limpiar(){
	$("#idbanco").val("");
	$("#idbanco").selectpicker('refresh');
	$("#nombre").val("");
	$("#nrocuenta").val("");
	$("#idcuentabanco").val("");
}

//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").show();
	}
}

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

// Marcamos el nombre del banco
function marcarBanco(){
	var nombreBanco=$("#idbanco option:selected").text();
	$("#nombre").val(nombreBanco);
}

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

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

     limpiar();
}

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

			$("#nombre").val(data.nombre);
			$("#idbanco").val(data.idbanco);
			$("#idbanco").selectpicker('refresh');
			$("#nrocuenta").val(data.nrocuenta);
			$("#idcuentabanco").val(data.idbancocuenta);
		})
}


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

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

init();