jQuery(function($){

	$("#menuTablasBasicas").addClass("active");
	
	var inspeccionCargada = sessionStorage.getItem("inspeccionCargada");
	
	if (inspeccionCargada !== null)
	{
		$("#menuFichaInspeccion").removeClass("disabled");
		/* Para completar la url del menú Ficha Inspección */
		 var link=$("#menuFichaInspeccion a").attr("href");
		 $("#menuFichaInspeccion a").attr("href",link+inspeccionCargada);
		 
		/* Para completar la url del menú Listados */
		 var link=$("#menuListados a").attr("href");
		 $("#menuListados a").attr("href",link+inspeccionCargada);
	}
	
	//Feedback agrupaciones
	$("#agrupacionesFeedback").rup_feedback({
		gotoTop : true,
		block : false,
		closeLink : true
	});
	
	//Feedback modal agrupaciones
	$("#agrupaciones_detail_feedback").rup_feedback({
		gotoTop : true,
		block : false,
		closeLink : true
	});
	
	//Combo modal direcciones
	$("#idDireccionModal").rup_combo({
		blank : "",
		source : CTX_PATH + "direcciones",
		sourceParam : {
			label : (("eu"===$.rup_utils.get("language")) ? "descripcionEuskera": "descripcionCastellano"),
			value : "idDireccion"
		},
		width: 320,
		ordered: false
	});
	
	//Tabla agrupaciones
	$("#agrupaciones").rup_datatable({		
		primaryKey: "idAgrupacion",
		loadOnStartUp: true,
		pagingType: "full_numbers",
		dom: 'rt<"bottom"lip>',
		pageLength : 10,
		lengthMenu: [10, 25, 50],
		filter:{
  	  		id:"agrupaciones_filter_form",
  	  		filterToolbar:"agrupaciones_filter_toolbar",
  	  		collapsableLayerId:"agrupaciones_filter_fieldset"
     	},
    	colReorder: {
			fixedColumnsLeft: 1
    	},
    	columnDefs: [
    		   {
    		      targets: [0],
    		      orderable: false,
     		      visible: false
    		   },
			   {
				   targets: [1],
				   visible: (("es"==$.rup_utils.get("language")) ? true : false),
			   },
			   {
				   targets: [2],
				   visible: (("eu"==$.rup_utils.get("language")) ? true : false),
			   },
			   {
				   targets: [4],
				   visible: (("es"==$.rup_utils.get("language")) ? true : false),
			   },
			   {
				   targets: [5],
				   visible: (("eu"==$.rup_utils.get("language")) ? true : false),
			   }
    	],
    	initComplete:function() {
			
			  var spanM = document.createElement("span"); 
			  var mostrando = document.createTextNode($.rup.i18n.app.paginador.mostrando); 
			  spanM.appendChild(mostrando);  
			  spanM.className = "mostrando";
			  var spanR = document.createElement("span"); 
			  var registros = document.createTextNode($.rup.i18n.app.paginador.registros); 
			  spanR.appendChild(registros);
			  spanR.className = "registros";
			  
			  var longitudTabla = document.getElementById("agrupaciones_length"); 
			  longitudTabla.appendChild(spanM); 
			  longitudTabla.appendChild(spanR);
    	}
	});
	
	var tabla = $('#agrupaciones').DataTable();
	
	$('#agrupaciones tbody').on( 'click', 'tr', function () {
		tabla.$('tr.selected').removeClass('selected');
        $(this).addClass('selected');
    });	
	
	$('#agrupaciones tbody').on('dblclick', 'tr', function () {
		$("#btnEditAgrupacion").trigger("click");
});
	
	//Modal agrupaciones
	$("#agrupaciones_detail_div").rup_dialog({
		autoOpen: false,
		width: 700,
		modal: true,
		position: { my: "center center" },
		type: $.rup.dialog.DIV
	});
	
	//Botón añadir agrupación
	$('#btnAddAgrupacion').on( 'click', function () {		
		
		$("#idDireccionModal").rup_combo("clear");
		$("#agrupaciones_detail_form")[0].reset();
		$("#agrupaciones_detail_feedback").rup_feedback("close");
		
		$("#agrupaciones_detail_form").rup_form({
			feedback: $("#agrupaciones_detail_feedback"),
			url: CTX_PATH + "agrupaciones",
			type: "POST",
			contentType: "application/json",
			dataType:"json",
			validate:{ 
				liveCheckingErrors : false,
				showFieldErrorAsDefault : true,
				showErrorsInFeedback : false,
				showFieldErrorsInFeedback : true,
				rules:{
					"direccion.idDireccion" : {required: true},
					"descripcionCorta" : {maxlength : 50},
					"descripcionCastellano" : {required:true, maxlength : 200},
					"descripcionEuskera" : {required:true, maxlength : 200}
				}
			},
		    success: function(){
			   $("#agrupacionesFeedback").rup_feedback({ gotoTop : true, block : false, closeLink : true });
			   $("#agrupacionesFeedback").rup_feedback("set", $.rup.i18n.app.agrupaciones.guardarOk, "ok");
			   tabla.ajax.reload();
			   $("#agrupaciones_detail_div").rup_dialog("close");
		    },
		    error: function(){
			   $("#agrupaciones_detail_feedback").rup_feedback({ gotoTop : true, block : false, closeLink : true });
			   $("#agrupaciones_detail_feedback").rup_feedback("set", $.rup.i18n.app.agrupaciones.guardarError, "error");
		    }
		});
		
		$("#agrupaciones_detail_form").rup_validate("resetForm");
		
		$("#agrupaciones_detail_div").rup_dialog("setOption", "title", $.rup.i18n.app.agrupaciones.nuevo);
		$("#agrupaciones_detail_div").rup_dialog("open");
	});
	
	//Botón editar agrupación
	$('#btnEditAgrupacion').on( 'click', function () {
		
		$("#agrupaciones_detail_form").rup_form({
			feedback: $("#agrupaciones_detail_feedback"),
			url: CTX_PATH + "agrupaciones",
			type: "PUT",
			contentType: "application/json",
			dataType:"json",
			validate:{ 
				liveCheckingErrors : false,
				showFieldErrorAsDefault : true,
				showErrorsInFeedback : false,
				showFieldErrorsInFeedback : true,
				rules:{
					"direccion.idDireccion" : {required: true},
					"descripcionCorta" : {maxlength : 50},
					"descripcionCastellano" : {maxlength : 200},
					"descripcionEuskera" : {maxlength : 200}
				}
			},
		    success: function(){
			   $("#agrupacionesFeedback").rup_feedback({ gotoTop : true, block : false, closeLink : true });
			   $("#agrupacionesFeedback").rup_feedback("set", $.rup.i18n.app.agrupaciones.modificarOk, "ok");
			   tabla.ajax.reload();
			   $("#agrupaciones_detail_div").rup_dialog("close");
		    },
		    error: function(){
			   $("#agrupaciones_detail_feedback").rup_feedback({ gotoTop : true, block : false, closeLink : true });
			   $("#agrupaciones_detail_feedback").rup_feedback("set", $.rup.i18n.app.agrupaciones.modificarError, "error");
		    }
		});
		
		$("#agrupaciones_detail_form").rup_validate("resetForm");
		
		if(tabla.rows(['.selected']).data().toArray().length > '0'){	
			var datosRow = tabla.rows(['.selected']).data().toArray(); 	
			$.ajax({
				type : "GET",
				url : CTX_PATH + "agrupaciones/" + datosRow[0].idAgrupacion,
				dataType : "json",
				async : false,
				success : function(data) {
					$("#idAgrupacionModal").val(data.idAgrupacion);
					$("#idDireccionModal").rup_combo("setRupValue",data.direccion.idDireccion);
					$("#descripcionCortaModal").val(data.descripcionCorta);
					$("#descripcionCastellanoModal").val(data.descripcionCastellano);
					$("#descripcionEuskeraModal").val(data.descripcionEuskera);
					
					$("#agrupaciones_detail_div").rup_dialog("setOption", "title", $.rup.i18n.app.agrupaciones.editar);
					$("#agrupaciones_detail_div").rup_dialog("open");
				}
			});	
		}else{
			$("#agrupacionesFeedback").rup_feedback({ gotoTop : false, block : false, closeLink : true });
			$("#agrupacionesFeedback").rup_feedback("set",$.rup.i18n.app.feedback.error.lineaNoSeleccionada, "error");
		}
	});
	
	//Botón eliminar agrupación
	$('#btnDeleteAgrupacion').on( 'click', function () {		
		if(tabla.rows(['.selected']).data().toArray().length > '0'){	
			$.rup_messages("msgConfirm", {
				title: $.rup.i18n.app.tabla.botones.eliminar,
				message: $.rup.i18n.app.agrupaciones.borrar,
				OKFunction:	function() {
					bloquearInterfaz();
					$("#agrupaciones_detail_feedback").rup_feedback("close");
					var datosRow = tabla.rows(['.selected']).data().toArray(); 			
					$.ajax({
						type : "DELETE",
						url : CTX_PATH + "agrupaciones/" + datosRow[0].idAgrupacion,
						dataType : "json",
						async : false,
						success : function() {
							desbloquearInterfaz();
							tabla.ajax.reload();
							$("#agrupacionesFeedback").rup_feedback({ gotoTop : true, block : false, closeLink : true });
							$("#agrupacionesFeedback").rup_feedback("set", $.rup.i18n.app.agrupaciones.borradoOK, "ok");
						},
						error: function(){
							desbloquearInterfaz();
							$("#agrupacionesFeedback").rup_feedback({ gotoTop : true, block : false, closeLink : true });
							$("#agrupacionesFeedback").rup_feedback("set", $.rup.i18n.app.agrupaciones.borradoError, "error");
						}
					});			
				}
			});		
		}else{
			$("#agrupacionesFeedback").rup_feedback({ gotoTop : false, block : false, closeLink : true });
			$("#agrupacionesFeedback").rup_feedback("set",$.rup.i18n.app.feedback.error.lineaNoSeleccionada, "error");
		}
	});
	
	//Botón guardar modal
	$('#agrupaciones_detail_button_save').on( 'click', function () {
		$("#agrupaciones_detail_form").submit();
	});	
	
	//Botón cancelar modal
	$('#agrupaciones_detail_button_cancel').on( 'click', function () {
		$("#agrupaciones_detail_div").rup_dialog("close");
	});
	
	//Exportar a Excel
	$("#btnExportarExcel").click(function(){
		var orderColumnIndex = tabla.order()[0][0];
		var sord = tabla.order()[0][1];
		var sidx = tabla.settings().init().columns[orderColumnIndex].sidx;
		var form=document.getElementById("resultadosActuacion_filter_form");
		form.method = "POST";
		form.action = "/ab79WebAppWar/resultadosactuacion/exportarExcel/"+sidx+"/"+sord;
		form.submit();
	});
});

