var filaSeleccionadaCampainas;
var tipoGuardar;
var idProcedimientoCombo = "";

jQuery(function($){
	
	$("#menuBusquedaCampainas").addClass("active");
	
	var inspeccionCargada = sessionStorage.getItem("inspeccionCargada");
	
	if (inspeccionCargada !== null)
	{
		$("#menuFichaInspeccion").removeClass("disabled");
		/* Para completar la url del menú Ficha Inspección */
		 var linkFicha=$("#menuFichaInspeccion a").attr("href");
		 $("#menuFichaInspeccion a").attr("href",linkFicha+inspeccionCargada);
		 
		/* Para completar la url del menú Listados */
		 var linkListado=$("#menuListados a").attr("href");
		 $("#menuListados a").attr("href",linkListado+inspeccionCargada);
	}
	
	//Feedback modal detalle campañas inspección
	$("#campainasInspeccion_detail_feedback").rup_feedback({
		gotoTop: true,
		block: false,
		closeLink: true,
		delay: 8000,
		fadeSpeed: 500
	});
	
	//Feedback modal añadir establecimientos
	$("#aniadirEstablecimientoModalFeedback").rup_feedback({
		gotoTop: true,
		block: false,
		closeLink: true,
		delay: 8000,
		fadeSpeed: 500
	});
	
	//Modal detalle campañas inspección
	$("#campainasInspeccion_detail_div").rup_dialog({
		autoOpen: false,
		width: 1050,
		modal: true,
		position: { my: "center center" },
		type: $.rup.dialog.DIV,
		close: function(){
			limpiarFormularioCampainasDetalle();
		},
		open: function(){
			desbloquearInterfaz();
		}
	});
	
	//Modal añadir establecimiento
	$("#aniadirEstablecimientoModal").rup_dialog({
		autoOpen: false,
		width: 1100,
		modal: true,
		position: { my: "center center" },
		type: $.rup.dialog.DIV,
		close: function(){
			limpiarFormularioAniadirEstablecimiento();
		},
		open: function(){
			desbloquearInterfaz();
		}
	});
	
	//Combo direcciones filtro
	$("#direccionesComboFiltro").rup_combo({
		blank: "",
		source: "/ab79WebAppWar/direcciones",
		sourceParam: {
			label: ("eu" === $.rup_utils.get("language"))? "descripcionEuskera" : "descripcionCastellano",
			value: "idDireccion"
		},
		width: 332,
		onLoadSuccess: function() {
			if(typeof DIRECCION_PRECARGADA !== "undefined" && DIRECCION_PRECARGADA !== null && DIRECCION_PRECARGADA !== "") {
				$("#direccionesComboFiltro").rup_combo("setRupValue", DIRECCION_PRECARGADA);
				$("#direccionesComboFiltro").rup_combo("disable");
			}
			
			var filtro = JSON.parse(sessionStorage.getItem("busquedaCampainasInspeccion"));
			if(filtro !== null && sessionStorage.getItem("btnVolverCampainasInspeccionClick") === 'true'){
				$("#direccionesComboFiltro").rup_combo("setRupValue", filtro["direccion.idDireccion"]);
				$("#idDireccion_filter_table").val(filtro["direccion.idDireccion"]);
			}
		}
	});
	
	//Combo direcciones modal detalle campañas inspección
	$("#direccionesComboModal").rup_combo({
		blank: "",
		source: "/ab79WebAppWar/direcciones",
		sourceParam: {
			label: ("eu" === $.rup_utils.get("language"))? "descripcionEuskera" : "descripcionCastellano",
			value: "idDireccion"
		},
		width: 330,
		onLoadSuccess: function() {
			if(typeof DIRECCION_PRECARGADA !== "undefined" && DIRECCION_PRECARGADA !== null && DIRECCION_PRECARGADA !== "") {
				$("#direccionesComboModal").rup_combo("setRupValue", DIRECCION_PRECARGADA);
			} 
		}
	});
	
	//Combo protocolos modal detalle campañas inspección
	$("#protocolosComboModal").rup_combo({
		parent: ["direccionesComboModal"],
		blank : "",
		source : "/ab79WebAppWar/protocolos/validados",
		sourceParam : {
			label : (("eu"==$.rup_utils.get("language")) ? "descripcionEuskera": "descripcionCastellano"),
			value : "idProtocolo"
		},
		width: 350
	});
	
	//Combo procedimientos modal detalle campañas inspección
	$("#procedimientosComboModal").rup_combo({
		parent: ["direccionesComboModal"],
		blank: "",
		source: "/ab79WebAppWar/procedimientos/expedienteInspeccion",
		sourceParam: {
			label: "descripcionConCodProcedure",
			value: "idProcedimiento"
		},
		onLoadSuccess: function(){
			if(idProcedimientoCombo !== ""){
				$("#procedimientosComboModal").rup_combo("clear");
				$("#procedimientosComboModal").rup_combo("setRupValue", idProcedimientoCombo);
			}
		},
		width: 750
	});
	
	//Combo tipos de documento modal
	$("#tipoDocumentoModal").rup_combo({
		blank: "",
		source: "/ab79WebAppWar/tiposdocumento/verValorCombo",
		sourceParam: {
			label: ("eu" === $.rup_utils.get("language"))? "descripcionEuskera" : "descripcionCastellano",
			value: "idTipoDocumento"
		},
		orderedByValue: true,
		width: 315
	});
	
	//Combo sexo modal
	$("#sexoModal").rup_combo({
		blank: "",
		source: "/ab79WebAppWar/sexos/verValorCombo",
		sourceParam: {
			label: ("eu" === $.rup_utils.get("language"))? "descripcionEuskera" : "descripcionCastellano",
			value: "idSexo"
		},
		orderedByValue: true,
		width: 315
	});
	
	//Combo provincias modal
	$("#provinciaComboModal").rup_combo({
		blank: "",
		source: "/ab79WebAppWar/nora/provincias",
		sourceParam: {
			label: "dsO",
			value: "id"
		},
		select: function(){
			$("#idProvinciaModal").val($("#provinciaComboModal").val());
			if($("#provinciaComboModal").rup_combo("getRupValue") === ""){
				$("#idMunicipioModal").val("");
			}
		},
		width: 250
	});
	
	//Combo municipios modal
	$("#municipioComboModal").rup_combo({
		parent: ["provinciaComboModal"],
		blank: "",
		source: "/ab79WebAppWar/nora/municipios",
		sourceParam: {
			label: "dsO",
			value: "id"
		},
		select: function(){
			$("#idMunicipioModal").val($("#municipioComboModal").val());
		},
		width: 250
	});
	
	//Combo localidades modal
	$("#localidadComboModal").rup_combo({
		parent: ["provinciaComboModal", "municipioComboModal"],
		blank: "",
		source: "/ab79WebAppWar/nora/localidades",
		sourceParam: {
			label: "dsO",
			value: "id"
		},
		width: 290
	});
	
	//Placeholder de los campos fecha según el idioma
	if("eu" === $.rup_utils.get("language")){
		$(".campoFecha").each(function(){
			$("#"+this.id).attr("placeholder", "yyyy/mm/dd");
		});
	} else{
		$(".campoFecha").each(function(){
			$("#"+this.id).attr("placeholder", "dd/mm/yyyy");
		});
	}
	
	//Cambiar el foco de los input del número de registro
	$("#registroUno").keyup(function(e){
		var code = (e.keyCode ? e.keyCode : e.which);
		if(code !== 9 && code !== 16){
			$("#registroUno").val($("#registroUno").val().toUpperCase());
			if($("#registroUno").val().length === 1){
				$("#registroDos").focus();
			}
		}
	});
	
	$("#registroDos").keyup(function(e){
		var code = (e.keyCode ? e.keyCode : e.which);
		if(code !== 9 && code !== 16){
			$("#registroDos").val($("#registroDos").val().toUpperCase());
			if($("#registroDos").val().length === 2){
				$("#registroTres").focus();
			}
		}
	});
	
	//TABLA CAMPAÑAS INSPECCIÓN
	$("#campainasInspeccion").rup_datatable({
		
		primaryKey: "idCampaina",
		loadOnStartUp: true,
		pagingType: "full_numbers",
		dom: 'rt<"bottom"lip>',
		pageLength : 5,
		lengthMenu: [5, 10, 25, 50],
		colReorder: false,
		filter:{
  	  		id:"campainasInspeccion_filter_form",
  	  		filterToolbar:"campainasInspeccion_filter_toolbar",
  	  		collapsableLayerId:"campainasInspeccion_filter_fieldset"
     	},
     	columnDefs: [
		    {
		       targets: [0],
		       visible: false,
		       orderable: false
		    },
		    {
		    	targets: [1],
		    	className: "subrayado"
		    },
		    {
		       targets: [1, 2, 3,4,5],
		       width: "15%",
		       className: "all"
		    },
		    {
		       targets: [6,7],
		       width: "50%",
		       className: "all"
		    },
		    {
		       targets: [8,9],
		       width: "20%",
		       className: "all"
		    },
		    {
		    	targets: [10,11],
		    	className: "text-center all",
		    	width: "10%",
		    },
		    {
		    	targets: [13],
		    	className: "text-center all",
		    	render: function(data, type, row) {
				   if(data !== null && data > 0){
						return "<span><i class='fa fa-file-text-o' aria-hidden='true'></i></span>";
					} else{
						return "";
					}		  
			   },
			   width: "5%"
		    },
		],
		initComplete: function(){
			
			var tablaCampainas = $("#campainasInspeccion").DataTable();
			
			//Mostrar / ocultar campos dependiendo del idioma
			if ("eu" === $.rup_utils.get("language")){
				tablaCampainas.columns( [2,4,6,8] ).visible( false );
			} else if("es" === $.rup_utils.get("language")) {
				tablaCampainas.columns( [3,5,7,9] ).visible( false );
			}
			
			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("campainasInspeccion_length"); 
			longitudTabla.appendChild(spanM); 
			longitudTabla.appendChild(spanR);
			
			$("#botoneraTablaCampainas").css("display", "none");
			$("#campainasInspeccion_wrapper").css("display", "none");
			desbloquearInterfaz();
			
		}
	});
	
	var tablaCampainas = $("#campainasInspeccion").DataTable();
	
	//Fila seleccionada
	$('#campainasInspeccion tbody').on( 'click', 'tr', function () {
		filaSeleccionadaCampainas = tablaCampainas.row(this).data();
		if ( $(this).hasClass('selected') ) {
	        $(this).removeClass('selected');
	    }
	    else {
	    	tablaCampainas.$('tr.selected').removeClass('selected');
	        $(this).addClass('selected');
	    }
		if(filaSeleccionadaCampainas.numeroInspeccionados > 0){
			$("#btnEliminarCampaina").prop("disabled", true);
		} else{
			$("#btnEliminarCampaina").prop("disabled", false);
		}
		if(filaSeleccionadaCampainas.direccion.idDireccion === DIRECCION_COMERCIO){
			$("#btnAsociarEstablecimientoCampainas").prop("disabled", true);
		} else{
			$("#btnAsociarEstablecimientoCampainas").prop("disabled", false);
		}
		
	});

	$('#campainasInspeccion tbody').on( 'dblclick', 'tr', function () {
		filaSeleccionadaCampainas = tablaCampainas.row(this).data();
		$("#btnEditarCampaina").click();		
	});
	
	//Botón búsqueda
	$("#btnBuscarCampainas").click(function(){
		$("#identificadorCampaina_filter_table").val($("#campainaFiltro").val());
		$("#fechaInicioDesde_filter_table").val($("#fechaInicioDesdeFiltro").val());
		$("#fechaInicioHasta_filter_table").val($("#fechaInicioHastaFiltro").val());
		$("#fechaFinDesde_filter_table").val($("#fechaFinDesdeFiltro").val());
		$("#fechaFinHasta_filter_table").val($("#fechaFinHastaFiltro").val());
		$("#idDireccion_filter_table").val($("#direccionesComboFiltro").val());
		
		var busqueda = {};
		$.each($("#campainasInspeccion_filter_form").serializeArray(), function() {		
			if(this.name == "direccion.idDireccion"){	
				busqueda[this.name] = $("#idDireccion_filter_table").val();
			}else{
				busqueda[this.name] = this.value;
			}			
		});
		sessionStorage.setItem("busquedaCampainasInspeccion", JSON.stringify(busqueda));
		
		$("#campainasInspeccion_filter_filterButton").click();
		$("#botoneraTablaCampainas").css("display", "block");
		$("#campainasInspeccion_wrapper").css("display", "block");
	});
	
	var filtro = JSON.parse(sessionStorage.getItem("busquedaCampainasInspeccion"));
	if(filtro !== null && sessionStorage.getItem("btnVolverCampainasInspeccionClick") === 'true'){
		$("#campainaFiltro").val(filtro["identificadorCampaina"]);
		$("#fechaInicioDesdeFiltro").val(filtro["fechaInicioDesde"]);
		$("#fechaInicioHastaFiltro").val(filtro["fechaInicioHasta"]);
		$("#fechaFinDesdeFiltro").val(filtro["fechaFinDesde"]);
		$("#fechaFinHastaFiltro").val(filtro["fechaFinHasta"]);
		
		setTimeout(function() { 
			$("#btnBuscarCampainas").click();
	    }, 500);
	}
	
	//Botón limpiar búsqueda
	$("#btnLimpiarCampainas").click(function(){
		$("#campainaFiltro").val("");
		$("#formBusqedaCampainas .campoFecha").each(function(){
			$("#"+this.id).val("");
		});
		$("#direccionesComboFiltro").rup_combo("clear");
		
		sessionStorage.removeItem("btnVolverCampainasInspeccionClick");
		sessionStorage.removeItem("busquedaCampainasInspeccion");
	});
	
	//Botón nueva campaña inspección
	$("#btnNuevaCampaina").click(function(){
		if(typeof filaSeleccionadaCampainas !== "undefined" && filaSeleccionadaCampainas !== null && filaSeleccionadaCampainas !== ""){
			$.rup_messages("msgConfirm", {
				title: $.rup.i18n.app.campainasInspeccion.nueva,
				message: $.rup.i18n.app.campainasInspeccion.nuevaCampainaConfirm,
				OKFunction:	function() {
					bloquearInterfaz();
					tablaCampainas
				    .rows( '.selected' )
				    .nodes()
				    .to$() 
				    .removeClass( 'selected' );
					$("#campainasInspeccion_detail_div").rup_dialog("setOption", "title", $.rup.i18n.app.campainasInspeccion.nueva);
					$("#campainasInspeccion_detail_div").rup_dialog("open");
				},
				CANCELFunction: function(){
					tablaCampainas
				    .rows( '.selected' )
				    .nodes()
				    .to$() 
				    .removeClass( 'selected' );
				}
			});
		} else{
			bloquearInterfaz();
			$("#campainasInspeccion_detail_div").rup_dialog("setOption", "title", $.rup.i18n.app.campainasInspeccion.nueva);
			$("#campainasInspeccion_detail_div").rup_dialog("open");
		}
		tipoGuardar = "POST";
		idProcedimientoCombo = "";
		if(typeof DIRECCION_PRECARGADA !== "undefined" && DIRECCION_PRECARGADA !== null && DIRECCION_PRECARGADA !== "") {
			$("#direccionesComboModal").rup_combo("disable");
		} else {
			$("#direccionesComboModal").rup_combo("enable");
		}
		
	});
	
	//Botón editar campaña inspección
	$("#btnEditarCampaina").click(function(){
		if(typeof filaSeleccionadaCampainas !== "undefined" && filaSeleccionadaCampainas !== null && filaSeleccionadaCampainas !== ""){
			bloquearInterfaz();
			recuperarCampaina();
			tipoGuardar = "PUT";
		} else{
			$("#campainasInspeccion_feedback").rup_feedback({ gotoTop : true, block : false, closeLink : true });
			$("#campainasInspeccion_feedback").rup_feedback("set", $.rup.i18n.app.feedback.error.lineaNoSeleccionada, "alert");
		}
	});
	
	//Botón eliminar campañas inspección
	$("#btnEliminarCampaina").click(function(){
		if(typeof filaSeleccionadaCampainas !== "undefined" && filaSeleccionadaCampainas !== null && filaSeleccionadaCampainas !== ""){
			
			// Mensaje de confirmación
			$.rup_messages("msgConfirm", {
				title: $.rup.i18n.app.tabla.botones.eliminar,
				message: $.rup.i18n.app.campainasInspeccion.borrarCampaina,
				OKFunction:	function() {
					bloquearInterfaz();
					$.ajax({
						url: CTX_PATH + "campainasinspeccion/" + filaSeleccionadaCampainas.idCampaina,
						type: "DELETE",
						success: function(){
							desbloquearInterfaz();
							tablaCampainas.ajax.reload();
							$("#campainasInspeccion_feedback").rup_feedback({ gotoTop : true, block : false, closeLink : true });
							$("#campainasInspeccion_feedback").rup_feedback("set", $.rup.i18n.app.campainasInspeccion.borrarCampainaOk, "ok");
							filaSeleccionadaCampainas = "";
						},
						error: function(){
							desbloquearInterfaz();
							$("#campainasInspeccion_feedback").rup_feedback({ gotoTop : true, block : false, closeLink : true });
							$("#campainasInspeccion_feedback").rup_feedback("set", $.rup.i18n.app.campainasInspeccion.borrarCampainaError, "error");
							filaSeleccionadaCampainas = "";
						}
					});
				}
			});
			
		} else{
			$("#campainasInspeccion_feedback").rup_feedback({ gotoTop : true, block : false, closeLink : true });
			$("#campainasInspeccion_feedback").rup_feedback("set", $.rup.i18n.app.feedback.error.lineaNoSeleccionada, "alert");
		}
	});
	
	//Configuracion fecha inicio y fecha fin
	$.rup_date({
		from: "fechaInicioModal",
		to: "fechaFinModal"
	});
	
	//Botón guardar modal detalle campañas inspección
	$("#campainasInspeccion_detail_button_save").click(function(){
		bloquearInterfaz();
		
		//Formulario modal detalle campañas inspección
		$("#campainasInspeccion_detail_form").rup_form({
			feedback: $("#campainasInspeccion_detail_feedback"),
			type: tipoGuardar,
			url: CTX_PATH + "campainasinspeccion",
			validate: {
				liveCheckingErrors : false,
				showFieldErrorAsDefault : true,
				showErrorsInFeedback : false,
				showFieldErrorsInFeedback : true,
				rules: {
					"direccion.idDireccion"		   : { required : true },
					"protocolo.idProtocolo"		   : { required : true },
					"procedimiento.idProcedimiento": { required : true },
					"descripcionCastellano"		   : { required : true },
					"descripcionEuskera": { required : true }
				}
			},
			success: function(){
				desbloquearInterfaz();
				$("#campainasInspeccion_detail_div").rup_dialog("close");
				tablaCampainas.ajax.reload();
				$("#campainasInspeccion_feedback").rup_feedback({ gotoTop : true, block : false, closeLink : true });
				$("#campainasInspeccion_feedback").rup_feedback("set", $.rup.i18n.app.campainasInspeccion.guardarCampainaOk, "ok");
				filaSeleccionadaCampainas = "";
			},
			error: function(){
				desbloquearInterfaz();
				$("#campainasInspeccion_detail_feedback").rup_feedback("set", $.rup.i18n.app.campainasInspeccion.guardarCampainaError, "error");
				filaSeleccionadaCampainas = "";
			}
		});	
		
		desbloquearInterfaz();
		$("#campainasInspeccion_detail_form").submit();
		
	});
	
	//Botón exportar a Excel 
	$("#btnExportarExcelCampainas").click(function(){
		
		var orderColumnIndex = tablaCampainas.order()[0][0];
		var sord = tablaCampainas.order()[0][1];
		var sidx = tablaCampainas.settings().init().columns[orderColumnIndex].sidx;
		
		var form = document.getElementById("campainasInspeccion_filter_form");
		form.method = "POST";
		form.action =  CTX_PATH + "campainasinspeccion/exportarExcel/" + sidx + "/" + sord;
		
		form.submit();
		
	});
	
	//Botón asociar establecimientos
	$("#btnAsociarEstablecimientoCampainas").click(function(){
		
		if(typeof filaSeleccionadaCampainas !== "undefined" && filaSeleccionadaCampainas !== null && filaSeleccionadaCampainas !== ""){
			bloquearInterfaz();
			window.location = CTX_PATH + "establecimientosregistrados/maint/" + filaSeleccionadaCampainas.idCampaina;
		} else{
			$("#campainasInspeccion_feedback").rup_feedback({ gotoTop : true, block : false, closeLink : true });
			$("#campainasInspeccion_feedback").rup_feedback("set", $.rup.i18n.app.feedback.error.lineaNoSeleccionada, "alert")
		}
		
	});
	
	//Botón cancelar modal detalle campañas inspección
	$("#campainasInspeccion_detail_button_cancel").click(function(){
		$("#campainasInspeccion_detail_div").rup_dialog("close");
	});
	
	//Botón añadir establecimiento
	$("#btnAniadirEstablecimiento").click(function(){
		
		if(typeof filaSeleccionadaCampainas !== "undefined" && filaSeleccionadaCampainas !== null && filaSeleccionadaCampainas){
			bloquearInterfaz();
			var aniadirEstablecimientoTexto = $.rup.i18n.app.campainasInspeccion.aniadirEstablecimiento;
			aniadirEstablecimientoTexto = aniadirEstablecimientoTexto.replace("{0}", filaSeleccionadaCampainas.identificadorCampaina);
			$("#aniadirEstablecimientoModal").rup_dialog("setOption", "title", aniadirEstablecimientoTexto);
			$("#aniadirEstablecimientoModal").rup_dialog("open");
		} else{
			$("#campainasInspeccion_feedback").rup_feedback({ gotoTop : true, block : false, closeLink : true });
			$("#campainasInspeccion_feedback").rup_feedback("set", $.rup.i18n.app.feedback.error.lineaNoSeleccionada, "alert")
		}
		
	});
	
	//Botón cancelar modal añadir establecimiento
	$("#aniadirEstablecimientoModalCancelar").click(function(){
		$("#aniadirEstablecimientoModal").rup_dialog("close");
	});
	
	//Botón guardar modal añadir establecimiento
	$("#aniadirEstablecimientoModalGuardar").click(function(){
		bloquearInterfaz();
		$("#identificadorEstablecimientoModal").val($("#registroUno").val() + $("#registroDos").val() + $("#registroTres").val());
		
		//Formulario modal añadir establecimiento
		$("#aniadirEstablecimientoModalForm").rup_form({
			feedback: $("#aniadirEstablecimientoModalFeedback"),
			type: "POST",
			url: CTX_PATH + "campainasinspeccion/aniadirEstablecimiento/" + filaSeleccionadaCampainas.idCampaina,
			dataType: "json",
			success: function(data){
				desbloquearInterfaz();
				$("#aniadirEstablecimientoModal").rup_dialog("close");
				tablaCampainas.ajax.reload();
				var idInspeccion = data.inspeccion.idInspeccion;
				var identificadorInspeccion = data.inspeccion.identificadorInspeccion;
				
				var feedbackInspeccionCreada = $.rup.i18n.app.campainasInspeccion.aniadirEstablecimientoOk;
				feedbackInspeccionCreada = feedbackInspeccionCreada.replace("{0}","<b><a href='/ab79WebAppWar/fichadeinspeccion/maint/"+ idInspeccion +"' target='_blank'>" + identificadorInspeccion + "</a></b>");
				
				$("#campainasInspeccion_feedback").rup_feedback({ gotoTop : true, block : false, closeLink : true });
				$("#campainasInspeccion_feedback").rup_feedback("set", feedbackInspeccionCreada, "ok");
				filaSeleccionadaCampainas = "";
			},
			error: function(){
				desbloquearInterfaz();
				$("#aniadirEstablecimientoModalFeedback").rup_feedback("set", $.rup.i18n.app.campainasInspeccion.aniadirEstablecimientoError, "error");
			}
		});
		
		if(($("#documentoModal").val() !== null && $("#documentoModal").val() !== "") 
			|| ($("#tipoDocumentoModal").val() !== null && $("#tipoDocumentoModal").val() !== "")){
			var numeroDocumentoValido = validarDocumento($("#documentoModal").val(), $("#tipoDocumentoModal").val());
		
			if(!numeroDocumentoValido) {
				$("#aniadirEstablecimientoModalFeedback").rup_feedback("set", $.rup.i18n.app.feedback.error.documentoNoValido, "error");
			} else {
				$("#aniadirEstablecimientoModalForm").submit();
			}
		} else {
			$("#aniadirEstablecimientoModalForm").submit();
		}
		
				
		
		desbloquearInterfaz();
	});
	
	
	
	//Modal documentos
	$("#documentosSubidos_detail_div").rup_dialog({
		autoOpen: false,
		width: 500,
		modal: true,
		position: { my: "center center" },
		type: $.rup.dialog.DIV
	});
	
	
	$("#btnEliminarDocumentoCampaina").click(function(){
		
		if($("#documentosCampainasInspeccion").DataTable().rows(['.selected']).data().toArray().length > '0'){
			
			var datosRow = $("#documentosCampainasInspeccion").DataTable().rows(['.selected']).data().toArray()[0];
			
			$.rup_messages("msgConfirm", {
				title: $.rup.i18n.app.tabla.botones.eliminar,
				message: $.rup.i18n.app.documentosActuaciones.borrarDocumento,
				OKFunction:	function() {
					bloquearInterfaz();
					$.ajax({
						url: CTX_PATH + "relcamdoc/eliminarDocumento/" + datosRow.documentoSubido.idDocumentoSubido + "/" + datosRow.documentoSubido.oidPid,
						type: "DELETE",
						success: function(){
							desbloquearInterfaz();
							$('#documentosCampainasInspeccion').DataTable().ajax.reload();
							$("#documentosCampainasInspeccion_feedback").rup_feedback({ gotoTop : true, block : false, closeLink : false, delay: 3000});
							$("#documentosCampainasInspeccion_feedback").rup_feedback("set", $.rup.i18n.app.documentosActuaciones.borrarDocumentoOk, "ok");
						},
						error: function(){
							desbloquearInterfaz();
							$("#documentosCampainasInspeccion_feedback").rup_feedback({ gotoTop : true, block : false, closeLink : false, delay: 3000});
							$("#documentosCampainasInspeccion_feedback").rup_feedback("set", $.rup.i18n.app.documentosActuaciones.borrarDocumentoError, "error");
						}
					});
				}
			});
		}else{
			$("#documentosCampainasInspeccion_feedback").rup_feedback({ gotoTop : true, block : false, closeLink : false, delay: 3000});
			$("#documentosCampainasInspeccion_feedback").rup_feedback("set", $.rup.i18n.app.feedback.error.lineaNoSeleccionada, "alert");
		}		
	});
	
	$("#btnNuevoDocumentoCampaina").click(function(){
		
		$("#tipoDocumentoComboDiv").removeAttr("hidden");
		
		$("#documentosSubidos_detail_div").rup_dialog("setOption", "title", $.rup.i18n.app.documentosActuaciones.nueva);
		$("#documentosSubidos_detail_div").rup_dialog("open");
		
		//Cargar combo tipos plantilla
		$("#tipoPlantillaCampainas_detail_table").rup_combo({
			blank : "",
			source : CTX_PATH + "plantillas/tiposPlantillaDeDocumento/" + idProcedimientoCombo,
			sourceParam : {
				label : (("eu"===$.rup_utils.get("language")) ? "descripcionEuskera": "descripcionCastellano"),
				value : "idPlantilla"
			},
			width: 320
		});	
		
		$("#documentoCampainas_detail_table").removeAttr("hidden");
//		$("#tipoPlantillaCampainas_detail_table").rup_combo("clear");
		$("#documentosSubidos_detail_form").rup_validate("resetForm");
		$("#documentosSubidos_detail_form")[0].reset();

		$("#documentosSubidosIdCampaina_detail_table").val($("#idCampainaModal").val());	
	});

	$("#btnDescargarDocumentoCampaina").click(function(){
		if($("#documentosCampainasInspeccion").DataTable().rows(['.selected']).data().toArray().length > '0'){
		
			bloquearInterfaz();
			var urlDescargarRelActDoc;
			var datosRow = $("#documentosCampainasInspeccion").DataTable().rows(['.selected']).data().toArray()[0];
			
			if(typeof datosRow.documentoSubido.oidDokusi !== "undefined" && datosRow.documentoSubido.oidDokusi !== "" && datosRow.documentoSubido.oidDokusi !== null) {
				urlDescargarRelActDoc = CTX_PATH + "relcamdoc/descargarDocumentoDokusi/" + datosRow.documentoSubido.oidDokusi + "/" + datosRow.documentoSubido.nombreDocumento;
			} else {
				urlDescargarRelActDoc = CTX_PATH + "relcamdoc/descargarDocumentoPid/" + datosRow.documentoSubido.oidPid + "/" + datosRow.documentoSubido.nombreDocumento;
			}
			
			window.location = urlDescargarRelActDoc;
			setTimeout(function() { 
		        desbloquearInterfaz();
		    }, 2000);
		} else{
			$("#documentosCampainasInspeccion_feedback").rup_feedback({ gotoTop : true, block : false, closeLink : false, delay: 3000});
			$("#documentosCampainasInspeccion_feedback").rup_feedback("set", $.rup.i18n.app.feedback.error.lineaNoSeleccionada, "alert");
		}
	});
	
	//Formulario documentos
	$("#documentosSubidos_detail_form").rup_form({
		feedback: $("#documentosSubidos_detail_feedback"),
		url: CTX_PATH + "relcamdoc/subirDocumento",
		type: "POST",
		contentType: "application/json",
		dataType:"json",
		validate:{ 
			liveCheckingErrors : false,
			showFieldErrorAsDefault : true,
			showErrorsInFeedback : false,
			showFieldErrorsInFeedback : true,
			rules:{
				"campainaInspeccion.idCampaina"			: { required : true },
				"file"									: { required : true },
				"documentoSubido.plantilla.idPlantilla"	: { required : true }
			},
			invalidHandler: function(){
				desbloquearInterfaz();
			}
	   },
	   success: function(){
			desbloquearInterfaz();
		   $("#documentosSubidos_detail_div").rup_dialog('close');
		   $('#documentosCampainasInspeccion').DataTable().ajax.reload();
		   $("#documentosCampainasInspeccion_feedback").rup_feedback({ gotoTop : true, block : false, closeLink : false, delay: 3000});
		   $("#documentosCampainasInspeccion_feedback").rup_feedback("set", $.rup.i18n.app.documentosActuaciones.guardarDocumentoOk, "ok");
	   },
	   error: function(data){
			desbloquearInterfaz();
			$("#documentosCampainasInspeccion_feedback").rup_feedback({ gotoTop : true, block : false, closeLink : false, delay: 3000});
			$("#documentosCampainasInspeccion_feedback").rup_feedback("set", $.rup.i18n.app.documentosActuaciones.guardarDocumentoError, "error");
	   }
	});
	
	//Botón cancelar modal documentos
	$("#documentosSubidos_detail_button_cancel").click(function(){
		$("#documentosSubidos_detail_div").rup_dialog("close");
	});
	
	//Botón guardar modal documentos
	$("#documentosSubidos_detail_button_save").click(function(){
		bloquearInterfaz();
		$("#documentosSubidos_detail_form").submit();
	});
});

//Recuperamos la campaña inspección a editar
function recuperarCampaina(){
	$.ajax({
		type: "GET",
		url: CTX_PATH + "campainasinspeccion/" + filaSeleccionadaCampainas.idCampaina,
		dataType: "json",
		success: function(data){
			$("#idCampainaModal").val(data.idCampaina);
			$("#identificadorCampainaModal").val(data.identificadorCampaina);
			$("#direccionesComboModal").rup_combo("setRupValue", data.direccion.idDireccion);
			$("#direccionesComboModal").rup_combo("disable");
			$("#protocolosComboModal").rup_combo("clear");
			$("#protocolosComboModal").rup_combo("setRupValue", data.protocolo.idProtocolo);
			if(data.procedimiento != null && data.procedimiento.idProcedimiento != null){
				idProcedimientoCombo = data.procedimiento.idProcedimiento;
				$("#procedimientosComboModal").rup_combo("clear");
				$("#procedimientosComboModal").rup_combo("setRupValue", idProcedimientoCombo);
			} else{
				$("#procedimientosComboModal").rup_combo("setRupValue", "");
			}
			if(filaSeleccionadaCampainas.numeroInspeccionados > 0){
				$("#protocolosComboModal").rup_combo("disable")
			}
			else
			 {
				$("#protocolosComboModal").rup_combo("enable")
			 }
			$("#descripcionCastellanoModal").val(data.descripcionCastellano);
			$("#descripcionEuskeraModal").val(data.descripcionEuskera);
			$("#fechaInicioModal").val(data.fechaInicio);
			$("#fechaFinModal").val(data.fechaFin);
			
			
			$("#idCampainaHidden").val(data.idCampaina);
			$("#documentosCampainasInspeccion_fieldset").removeAttr("hidden");
//			$("#documentosCampainasInspeccion").DataTable().ajax.reload();
			cargarTablaDocumentosCampaina();
			
			var editarCampainaTitulo = $.rup.i18n.app.campainasInspeccion.editarCampaina;
			editarCampainaTitulo = editarCampainaTitulo.replace("{0}", data.identificadorCampaina);
			$("#campainasInspeccion_detail_div").rup_dialog("setOption", "title", editarCampainaTitulo);
			$("#campainasInspeccion_detail_div").rup_dialog("open");
		},
		error: function(){
			desbloquearInterfaz();
			$("#campainasInspeccion_feedback").rup_feedback({ gotoTop : true, block : false, closeLink : true });
			$("#campainasInspeccion_feedback").rup_feedback("set", $.rup.i18n.app.campainasInspeccion.recuperarCampainaError, "error");
		}
	});
}

//Limpiar el formulario detalle de campañas inspección
function limpiarFormularioCampainasDetalle(){
	$("#campainasInspeccion_detail_feedback").rup_feedback("close");
	$(".comboModalEdit").each(function(){
		$("#"+this.id).rup_combo("clear");
	});
	$("#campainasInspeccion_detail_form").rup_validate("resetForm");
	$("#campainasInspeccion_detail_form")[0].reset();
	
	$("#documentosCampainasInspeccion_fieldset").attr("hidden", "true");
}

//Limpiar el formulario de añadir un establecimiento
function limpiarFormularioAniadirEstablecimiento(){
	$("#aniadirEstablecimientoModalFeedback").rup_feedback("close");
	$(".comboModal").each(function(){
		$("#"+this.id).rup_combo("clear");
	});
	$("#aniadirEstablecimientoModalForm")[0].reset();
}

//Buscar la provincia a partir del id introducido
function buscarComboProvincia(){
	$("#provinciaComboModal").rup_combo("setRupValue", pad($("#idProvinciaModal").val(), 2));
}

//Buscar el municipio a partir del id introducido
function buscarComboMunicipio(){
	$("#municipioComboModal").rup_combo("setRupValue", pad($("#idMunicipioModal").val(), 3));
}

function cargarTablaDocumentosCampaina(){
	
	if(!$.fn.DataTable.isDataTable('#documentosCampainasInspeccion')){
		
		//Tabla de documentos de la campaina
		$("#documentosCampainasInspeccion").rup_datatable({
			primaryKey: "idRelCamDoc",
			loadOnStartUp: false,
			pagingType: "full_numbers",
			dom: 'rt<"bottom"lip>',
			pageLength : 5,
			lengthMenu: [5, 10, 25, 50],
			filter:{
				id:"documentosCampainasInspeccion_filter_form",
				filterToolbar:"documentosCampainasInspeccion_filter_toolbar",
				collapsableLayerId:"documentosCampainasInspeccion_filter_fieldset"
			},
			colReorder: {
				fixedColumnsLeft: 0
			},
			order: [ 0, 'asc' ],
			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("documentosCampainasInspeccion_length"); 
				longitudTabla.appendChild(spanM);
				longitudTabla.appendChild(spanR);
				
				$('[name="documentosCampainasInspeccion_length"]').width("40px");
				$(".registros").css('float','right');
			},
			drawCallback: function( settings ) {
				$("#btnDescargarDocumentoCampaina").addClass( "ui-button-disabled ui-state-disabled" );
				$("#btnEliminarDocumentoCampaina").addClass( "ui-button-disabled ui-state-disabled" );	
			},
			columnDefs: [
				{
					targets: [0],
					visible: false
				},
				{
					targets: [1],
					visible: false
				},
				{
					targets: [2],
					visible: false
				},
				{
					targets: [3],
					visible: false
				},
				{
					targets: [4],
					visible: false
				},
				{
					targets: [5],
					width: 300,
					sortable: false
				},
				{
					targets: [6],
					width: 300,
					sortable: false
				}
			]
		});
		
		$('#documentosCampainasInspeccion_filter_div').on( 'click', 'table tr', function () {		
			if($("#documentosCampainasInspeccion").DataTable().rows().data().toArray().length > 0){	
				$("#documentosCampainasInspeccion").DataTable().$('tr.selected').removeClass('selected');
				$(this).addClass('selected');		
			}
			
			if($("#documentosCampainasInspeccion").DataTable().rows(['.selected']).data().length > 0){
				$("#btnDescargarDocumentoCampaina").removeClass( "ui-button-disabled ui-state-disabled" );
				$("#btnEliminarDocumentoCampaina").removeClass( "ui-button-disabled ui-state-disabled" );
			}else{
				$("#btnDescargarDocumentoCampaina").addClass( "ui-button-disabled ui-state-disabled" );
				$("#btnEliminarDocumentoCampaina").addClass( "ui-button-disabled ui-state-disabled" );
			}
		});
	}else{
		$("#documentosCampainasInspeccion").DataTable().ajax.reload();
	}
	
}