//@ sourceURL=tabAvisos.js

jQuery(function($) {
	
	// DIALOGO EDITAR AVISOS
    let aviso_dialog = $("#avisos_detail_div");
	let aviso_dialog_feedback = $("#avisos_detail_feedback");
	
	try {
		aviso_dialog.rup_dialog("destroy");
	} catch (error) {}
	
	aviso_dialog_feedback.rup_feedback ({
		  type: "ok",
		  block: false,
	});	
	
	
	//COMBOS DEL DIALOGO
	
	
	$("#tipoAviso_avisos_dialogo_table").rup_combo({
		rowStriping: true,
		source: $.rup.CTX_PATH + 'combo/tipoAvisosAll',
		sourceParam: {label: "desc", value:"idTipoAviso40"},
		ordered: true,
		blank: '',
		customClasses: ['select-material'],
		width: 'auto',
		height: 'auto',
		disabled: true,
	});
	
	$("#subTipoAviso_avisos_dialogo_table").rup_combo({
		source: $.rup.CTX_PATH + 'combo/subtiposavisosAll',
		sourceParam: {label: "desc", value:"idSubTipoAviso41"},
		rowStriping: true,
		width: 'auto',
		blank: '',
		disabled: true,
		customClasses: ['select-material'],
		onLoadSuccess:function() {
			comprobarCombos();
		}
		
	});

	$('#fAlta20_aviso_dialogo_table').rup_date({
		yearRange: 'c-100:c+100',
		mask: 'dd/mm/yyyy'
	});
	
	$("#idActorOrigen_avisos_dialogo_table").rup_combo({
		rowStriping: true,
		ordered: true,
		blank: '',
		customClasses: ['select-material'],
		loadFromSelect:true,
		width: 'auto',
		height: 'auto',
		disabled: true,
	});
	
	$("#idActorDestino_avisos_dialogo_table").rup_combo({
		rowStriping: true,
		ordered: true,
		blank: '',
		customClasses: ['select-material'],
		loadFromSelect:true,
		width: 'auto',
		height: 'auto',
		disabled: true,
	});
	
	$('#fecBaja_aviso_dialogo_table').rup_date({
		yearRange: 'c-100:c+100',
        showButtonPanel: true,
        showOtherMonths: true,
        mask: 'dd/mm/yyyy',
        disabled: true
    });
	
	$("#motivoDeLaBaja_avisos_dialog_table").rup_combo({
		source:$.rup.CTX_PATH + 'avisos/motivosBaja',
		sourceParam: {label: "desc", value:"idMotivoBaja33"},
		rowStriping: true,
		width: 'auto',
		blank: '',
		customClasses: ['select-material'],
		disabled: true
	});
	
	$("#canalDeComunicacion_avisos_dialog_table").rup_combo({
		rowStriping: true,
		ordered: true,
		blank: '',
		customClasses: ['select-material'],
		loadFromSelect:true,
		width: 'auto',
		height: 'auto',
		disabled: true
	});

	$("#origenDeComunicacion_avisos_dialog_table").rup_combo({
		rowStriping: true,
		ordered: true,
		blank: '',
		customClasses: ['select-material'],
		loadFromSelect:true,
		width: 'auto',
		height: 'auto',
		disabled: true
	});
	
	$("#procedente_aviso_dialogo_table").rup_combo({
		rowStriping: true,
		ordered: true,
		blank: '',
		customClasses: ['select-material'],
		loadFromSelect:true,
		width: 'auto',
		height: 'auto',
		disabled: true
	});
	
	$("#estadoQueja_aviso_dialogo_table").rup_combo({
		rowStriping: true,
		ordered: true,
		blank: '',
		customClasses: ['select-material'],
		loadFromSelect:true,
		width: 'auto',
		height: 'auto',
		disabled: true
	});

	$("#motivosQueja_aviso_dialogo_table").rup_combo({
		source:$.rup.CTX_PATH + 'avisos/motivosQuejaAll',
		sourceParam: {label: "desc", value:"idMotivoQueja62"},
		rowStriping: true,
		width: 'auto',
		blank: '',
		customClasses: ['select-material'],
		disabled: true
	});
	
	$('#fechaQueja_aviso_dialogo_table').rup_date({
		yearRange: 'c-100:c+100',
        showButtonPanel: true,
        showOtherMonths: true,
        mask: 'dd/mm/yyyy',
        disabled:true
    });
	
	$("#canalDeComunicacionAnularBaja_avisos_dialog_table").rup_combo({
		rowStriping: true,
		ordered: true,
		blank: '',
		customClasses: ['select-material'],
		loadFromSelect:true,
		width: 'auto',
		height: 'auto',
		disabled: true
	});
	
	/*DOMICILIOS*/
	if($("#idprovincia06_avisos_dialog_table").length == 1){
		$("#idprovincia06_avisos_dialog_table").rup_combo({
			source:  $.rup.CTX_PATH + 'nora/provincias',
			sourceParam: {label: "descProvincia", value:"codProvincia"},
			rowStriping: true,
			width: 'auto',
			blank: '',
			customClasses: ['select-material'],
			onLoadSuccess: function(obj){
				$('#idprovincia06_avisos_dialog_table').rup_combo("disable");
			},
			change: function(){

			},
			selected: (function(){ try { return solicitantes.direcciones.idProvincia06} catch { return null}})()
		});


	}
	if($("#idmunicipio06_avisos_dialog_table").length == 1){
		//MUNICIPIO
		$("#idmunicipio06_avisos_dialog_table").rup_combo({
			parent: ["idprovincia06_avisos_dialog_table"],			
			source: $.rup.CTX_PATH + 'nora/municipioEnlazado?cp06='+$("#cp06_avisos_dialog_table").val(),
			sourceParam: {label: "descripcion", value:"codMunicipio"},
			rowStriping: true,
			width: 'auto',
			blank: '',
			customClasses: ['select-material'],
			change: function(){
				
			},
			selected: (function(){ try { return solicitantes.direcciones.idMunicipio06} catch { return null}})()
		});
	}
	
	if($("#idlocalidad06_avisos_dialog_table").length == 1){
		//LOCALIDAD
		$("#idlocalidad06_avisos_dialog_table").rup_combo({
			parent: ["idprovincia06_avisos_dialog_table", "idmunicipio06_avisos_dialog_table"],			
			source: $.rup.CTX_PATH + 'nora/localidadEnlazado?cp06='+$("#cp06_avisos_dialog_table").val(),
			sourceParam: {label: "descripcion", value:"codLocalidad"},
			rowStriping: true,
			width: 'auto',
			blank: '',
			customClasses: ['select-material'],
			change: function(){
				//refrescar pisostutelados
			},
			selected: (function(){ try { return solicitantes.direcciones.idLocalidad06 } catch { return null}})() 
		});
	}
	
	if($("#idcalle06_avisos_dialog_table").length == 1){
		//CALLE	
		$("#idcalle06_avisos_dialog_table").rup_combo({
			parent: ["idlocalidad06_avisos_dialog_table"],
			source:  $.rup.CTX_PATH + 'nora/calleEnlazado?cp06='+$("#cp06_avisos_dialog_table").val(),
			sourceParam: {label: "descripcion", value:"idCalle"},
			rowStriping: true,
			width: 'auto',
			blank: '',
			customClasses: ['select-material'],
			change: function(){
				if($("#idcalle06_avisos_dialog_table").val() == ''){
					
					$("#calleDesc").show();
					$("#portalDesc").show();
				}else{
					$("#calleDesc").hide();
				}			
			},
			selected: (function(){ try { return solicitantes.direcciones.idCalle06 } catch { return null}})()
		});
	}
	
	if($("#idportal06_avisos_dialog_table").length == 1){
		$("#idportal06_avisos_dialog_table").rup_combo({
			parent: ["idlocalidad06_avisos_dialog_table", "idcalle06_avisos_dialog_table"],
			source:  $.rup.CTX_PATH + 'nora/portalEnlazado',
			sourceParam: {label: (($.rup_utils.capitalizedLang() == ("Es")) ? "portalCompletoEs" : "portalCompletoEu" ), value:"codPortal"},
			rowStriping: true,
			width: 'auto',
			blank: '',
			customClasses: ['select-material'],
			change: function() {			
				//refrescar pisostutelados
				if($("#idportal06_avisos_dialog_table").val() == ''){
					$("#portalDesc").show();
				}else{
					$("#portalDesc").hide();
				}
				if($("#cp06_avisos_dialog_table").val()=='' && $("#idportal06_avisos_dialog_table") != ''){
					const ajaxData = {
							'url': $.rup.CTX_PATH + 'nora/conseguirCP?portal='+ $("#idportal06_avisos_dialog_table").val() ,
							'type': 'GET',
							'contentType': 'application/json',
							'dataType': 'json',
							success: function (res) {
								$("#cp06_tabSolicitud_detail_table").val(res);
							},
							error: function (error) {
								$("#iniciosOficio_feedback").rup_feedback('set', error.responseText, "error");	
							}
						};
						
					$.rup_ajax(ajaxData);
				}
			},
			selected: (function(){ try { return solicitantes.direcciones.portal06 } catch { return null}})()
		});
	}
	$('#identificadorDeLaLLamada_avisos_dialog_table').prop("disabled",true);
	$('#mantenerInstalacion_avisos_detail_table').prop("disabled",true);
	$('#tiempoDeResolucion_aviso_dialogo_table').prop("disabled",true);
	$('#piso06_avisos_dialog_table').prop("disabled",true);
	$('#letra06_avisos_dialog_table').prop("disabled",true);
	$('#identificadorDeLaLLamadaAnularBaja_avisos_dialog_table').prop("disabled",true);
	$('#cp06_detail_table').prop("disabled",true);
	$('#idprovincia06_detail_table').prop("disabled",true);
	$('#idmunicipio06_detail_table').prop("disabled",true);
	$('#idlocalidad06_detail_table').prop("disabled",true);
	$('#idcalle06_detail_table').prop("disabled",true);
	$('#idportal06_detail_table').prop("disabled",true);
	$('#escalera06_detail_table').prop("disabled",true);
	$('#piso06_detail_table').prop("disabled",true);
	$('#letra06_detail_table').prop("disabled",true);
	$('#localidad06_detail_table').prop("disabled",true);
	$('#calle06_detail_table').prop("disabled",true);
	$('#portal06_detail_table').prop("disabled",true);
	
	$("#unidadBase16_avisos_dialog_table").rup_combo({
		source: $.rup.CTX_PATH + 'combo/unidadesBaseInformes',
		sourceParam: {label: "desc", value:"idUnidadBase92"},
		loadFromSelect:false,
		width: 'auto',
        ordered: false,
		rowStriping: true,
		blank:'',
		customClasses: ['select-material'],
		height: 'auto',
		
		onLoadSuccess:function(){
			
			$("#unidadBase16_avisos_dialog_table").rup_combo("disable");
		}
	});
	
	
	
  const initTable = () => {
    /* Declaramos las columnas */
    const getColumnsModel = function() {
      const getColumnModel = function(name, index, editable, hidden, orderable) {
        return {
          name: name,
          index: index,
          editable: editable,
          hidden: hidden,
          orderable: orderable
        };
      };

      let columnsModel = [];
      columnsModel.push(getColumnModel("urgencia20", "urgencia20", false, false, false));
      columnsModel.push(getColumnModel("idAviso20", "idAviso20", false, true, false));
      columnsModel.push(getColumnModel("maestroTiposAviso.desc", "maestroTiposAviso.desc", true, false));
      columnsModel.push(getColumnModel("maestroSubtiposAviso.desc", "maestroSubtiposAviso.maestroTiposAviso.desc", true, false));
      columnsModel.push(getColumnModel("fAlta20", "fAlta20", true, false));
      columnsModel.push(getColumnModel("fProcesado20", "fProcesado20", true, false));
      columnsModel.push(getColumnModel("maestroActoresByOrigen20.descSort42", "maestroActoresByOrigen20.descSort42", true, false));
      columnsModel.push(getColumnModel("maestroActoresByDestino20.descSort42", "maestroActoresByDestino20.descSort42", true, false));
      columnsModel.push(getColumnModel("idSolicitante20", "idSolicitante20", true, false));
      columnsModel.push(getColumnModel("observaciones20", "observaciones20", true, false));

      return columnsModel;
    };
    
    const getColumnsDefs = function () {
		return [
			{ 
				"targets": 0,
				"className": "icons-column",
				"render": function(data, type, row, settings){						
					let iconUrgencia = "";
					if( row.urgencia20 >= 1 ){
						iconUrgencia = `
							<span class="mdi mdi-clock-fast naranja sol_urgente_icon " 
								style="float: right;">
							</span>
						`;
					}
					
					let iconObs = "";
					if( row.observaciones20 !=null) {
						iconObs = `							
							<span class="mdi mdi-note-multiple-outline obs-icon verde" 
							 style="float:right" obs='${row.observaciones20}'></span>
								`;  						
					}
    		    	
					return iconUrgencia + iconObs;									
				}
			}]
    };
    
    /* Declaramos los botones */
    const getCustomButtons = function() {
      let customButons = [];
      const FN_verEditarAviso = {};
      FN_verEditarAviso.test  = function(){
			const selectedRows  = $("#avisosSolicitante").rup_table("getSelectedRows");	
			// 1 seleccionado
			if ( selectedRows.length == undefined) {
				return true;
			}
			return false;
		};
		
      const verDetalleButton = {
        text: function() {
          return $.rup.i18n.app.avisos.btnVer;
        },
        id: 'editarAviso', // Campo obligatorio si se quiere usar desde el contextMenu
        className: 'btn-material-primary-high-emphasis table_toolbar_btnView',
        icon: "mdi-playlist-edit",
        displayRegex: FN_verEditarAviso,
        insideContextMenu: true,
        //type: 'view',
        action: function(e, dt) {
        	
          $.rup_ajax({
            url: $.rup.CTX_PATH + "avisos/" + $('#avisosSolicitante').rup_table('getSelectedRows')['idAviso20'],
            type: "GET",
            dataType: 'json',
            contentType: 'application/json',
            beforeSend: function() {
              Ad74aUtils.bloquearInterfaz();
            },
            complete: function() {
              Ad74aUtils.desBloquearInterfaz();
            },
            success: function(data) {
            	console.log(data.urgencia20);
            	
            	
				
            	if(data.idSolicitante20!=null){
		              $.rup_ajax({
		                  url: $.rup.CTX_PATH +"avisos/obtenerDatosBeneficiarioPorId/"+ data.idSolicitante20,
		                  type: "POST",            
		                  dataType: 'json',
		                  contentType: 'application/json',
		    				beforeSend: function() {
		    					Ad74aUtils.bloquearInterfaz();
		                    },
		                    complete: function() {
		                    	Ad74aUtils.desBloquearInterfaz();
		                    	
		                    },
		                  success: function (data){
		    				if(data!=null){
		    					$('#nombreBeneficiario_avisos_dialog_table').val(data.nombreCompleto);
		    					$('#idSolicitante20_avisos_dialog_table').val(data.idSolicitante01);
		    					$('#dniSolicitante_avisos_dialog_table').val(data.identificador01);
								
		    				}
		    				else{
		    					$("#dniSolicitante_avisos_dialog_table").val('');
		    				}
		                  },
		                  error: function(error){ 
		    				alert("error")
		
		                  }
		            });	 
            	}
              aviso_dialog.rup_dialog("open");
              $.rup_utils.populateForm($.rup_utils.jsontoarray(data), "#avisos_detail_form");
			if(data.direcciones!=null){
				iniciarDireccion(data.direcciones,"");
				$.rup_utils.populateForm($.rup_utils.jsontoarray(data), "#avisos_dialog_form");
			}
			if(data.usuario!=null){
				 $('#identificador80_avisos_dialog_table').val(data.usuario.identificador80);
				 $('#nombre_avisos_dialog_table').val(data.usuario.nombreCompleto);
				 $('#ayuntamiento_informes_dialog_table').val(data.usuario.ayuntamiento.desc);
			}
			//$('#email20_avisos_dialog_table').val(data.email20!=null ? data.email20 : null);
			//$('#telefono20_avisos_dialog_table').val(data.telefono20!=null ? data.telefono20 : null);
			if(data.informes!=null && data.informes.idUnidadBase16!=null){
				$("#unidadBase16_avisos_dialog_table").rup_combo("setSource",$.rup.CTX_PATH + 'combo/unidadesBaseInformes?idUnidadBase92='+data.informes.idUnidadBase16);
			}
			comprobarCombos();
              loadDocumentos();
              
          	  if(data.urgencia20 == true){
	          	$('#normalUrgente_avisos_dialog_table').prop("checked",true);	          		
	          }else{
	          	$('#normalUrgente_avisos_dialog_table').prop("checked",false);
	          }
            },
            error: function(error) {
              alert("error");
            }
          });
          
        }
      };
      customButons.push(verDetalleButton);
      return customButons;
    };

    /* Cargamos la tabla de avisos */
    $("#avisosSolicitante").rup_table({
      colReorder: {
        fixedColumnsLeft: 1
      },
      colModel: getColumnsModel(),
      columnDefs: getColumnsDefs(),
      primaryKey: "idAviso20",
      filter:{
	  		id:"avisoSolicitante_filter_form",
	  		filterToolbar:"avisoSolicitante_filter_toolbar",
	  		collapsableLayerId:"avisoSolicitante_filter_fieldset"
   		},
      createTooltipBody: false, // No muestra el tooltip automático de las columnas de la tabla
      select: {
        activate: true,
        multiSelect: false,
        deleteDoubleClick: true
      },
		"rowCallback": function( row, data, index ) {
			if ( data.urgencia20 == true){
				$(row).addClass('orange_row');
			}
		},
      buttons: {
        activate: true,
        blackListButtons: ['reportsButton', 'addButton', 'editButton', 'cloneButton', 'deleteButton', 'copyButton'],
        myButtons: getCustomButtons()
      },
      columnOrderArrows: {
        showOnlyActive: false,
        display: 'inline'
      },
		drawCallback: function( ctx ) {
			$(".sol_urgente_icon").rup_tooltip({
				content: {
					text: $.rup.i18n.app.tooltip.urgente
				}, 
				position: {
					my: 'bottom left',  // Position my top left...
					at: 'top left', // at the bottom right of...
				},   
				style: { 
					classes: 'qtip-orange' 
				}
			});
			$(".obs-icon").rup_tooltip({
				content: {
					text: function(event, api) {
						let text = $(this).attr('obs');
						text = text.replaceAll('\n', '<br/>');
						return text;
					}
				}, 
				position: {
					my: 'bottom left',  // Position my top left...
					at: 'top left', // at the bottom right of...
				},   
				style: { 
					classes: 'qtip-green qtip-large' 
				}
			});
			
			//Evento doble click sobreescrito
			const rowsBody = $(ctx.nTBody);
			rowsBody.off('dblclick', 'tr');
//			rowsBody.on('dblclick', 'tr', function (e) {
//				//console.log(ctx.json.rows[this._DT_RowIndex]);
//				const row = ctx.json.rows[this._DT_RowIndex]
//				if(row.observaciones20 != null){
//					Ad74aUtils.openConfirmDialog(
//						'dialogConfirm', 
//						$.rup.i18n.app.dialog.title.observaciones, 
//						row.observaciones20.replaceAll('\n', '<br/>'),  
//						[
//				        	{
//				                text: $.rup.i18n.app.botonera.cerrar,
//				                click: function () { 
//				                    $('#dialogConfirm').rup_dialog('close'); 
//				                },
//				                btnType: $.rup.dialog.LINK
//				                
//				            }
//				        ],
//				        'custom_mid_dialog'
//					);
//					
//					
//				}
//            });
		},
      order: [[4, "desc"]]
    });
  };
  

	aviso_dialog.rup_dialog({
		type: $.rup.dialog.DIV,
		autoOpen: false,
		modal: true,
		closeOnEscape: true,
		resizable: true,
        specificLocation:'avisosSolicitante', /// !! IMPORTANTE !! Si se trata de un dialogo en una pestaña es necesario ponerlo para que no se queden elementos fuera de la pestaña que den problemas al volver a cargar la misma.
		//width:600,
		//height:600,
		dialogClass: 'custom_mid_dialog',
		title: $.rup.i18n.app.avisos.tituloDialogoConsultar,
		buttons : [ 
			{
				 text: $.rup.i18n.app.avisos.btnCerrar,
	             id: "rup_dialogCerrar",
				click : () => {
					aviso_dialog.rup_dialog("close");
				},
				btnType : $.rup.dialog.LINK
			}
		],
		open: function(){
			const aviso = $("#avisosSolicitante").rup_table("getSelectedRows"); 
			
		},
		close: function(){
			$("#contactos_detail_form").rup_form("clearForm");
			aviso_dialog_feedback.rup_feedback("close");
			Ad74aUtils.hacerPlegable();
			limpiarPlegables();
		}		    
	});

	
	const comprobarCombos=()=>{
		$("#detalleAportacionLayer").addClass("d-none");
		//Campos propios del tipo “Actualización” y subtipo “Cambio de domicilio urgente”
		if($('#tipoAviso_avisos_dialogo_table').val()==TIPOAVISO_ACTUAL && $('#subTipoAviso_avisos_dialogo_table').val()==SUBTIPOAVISO_CAMBIODOM){
			$('#plegadoCambioDeDomicilio').show();
			$('#plegadoActualizacionBaja').hide();
			$('#plegadoQuejaReclamaciones').hide();
			$('#plegadoActualizacionAnularBaja').hide();
			$('#plegadoTrabajadorSocial').hide();
			
		}
		
		else if(($('#tipoAviso_avisos_dialogo_table').val()==TIPOAVISO_INFSOC || $('#tipoAviso_avisos_dialogo_table').val()==TIPOAVISO_INFINT) && $('#avisosSolicitante').rup_table('getSelectedRows')['numExpedienteAsociado']==null){
			$('#plegadoCambioDeDomicilio').hide();
			$('#plegadoActualizacionBaja').hide();
			$('#plegadoQuejaReclamaciones').hide();
			$('#plegadoActualizacionAnularBaja').hide();
			$('#plegadoTrabajadorSocial').show();
			
		}
		
		else if($('#tipoAviso_avisos_dialogo_table').val()==TIPOAVISO_ACTUAL && $('#subTipoAviso_avisos_dialogo_table').val()==SUBTIPOAVISO_ANULARBAJA){
			$('#plegadoCambioDeDomicilio').hide();
			$('#plegadoActualizacionBaja').hide();
			$('#plegadoQuejaReclamaciones').hide();
			$('#plegadoActualizacionAnularBaja').show();
			$('#plegadoTrabajadorSocial').hide();
			
		}
		
		//Campos propios del tipo “Queja y reclamaciones”
		else if($('#tipoAviso_avisos_dialogo_table').val()==TIPOAVISO_QUEJREC){
			$('#plegadoCambioDeDomicilio').hide();
			$('#plegadoActualizacionBaja').hide();
			$('#plegadoQuejaReclamaciones').show();
			$('#plegadoActualizacionAnularBaja').hide();
			$('#plegadoTrabajadorSocial').hide();
			
		}

		//Campos propios del tipo “Actualización” y subtipo “Baja” y subtipo "baja/alta"
		else if(($('#subTipoAviso_avisos_dialogo_table').val()==SUBTIPOAVISO_BAJA || $('#subTipoAviso_avisos_dialogo_table').val()==SUBTIPOAVISO_BAJAYALTA) &&$('#tipoAviso_avisos_dialogo_table').val()==TIPOAVISO_ACTUAL){
			$('#plegadoCambioDeDomicilio').hide();
			$('#plegadoActualizacionBaja').show();
			$('#plegadoQuejaReclamaciones').hide();
			$('#plegadoActualizacionAnularBaja').hide();
			$('#plegadoTrabajadorSocial').hide();
			
			if($('#subTipoAviso_avisos_dialogo_table').val()==SUBTIPOAVISO_BAJAYALTA){
				$('#mantenerInstalacion_avisos_detail_table').prop("checked",true);
				$('#mantenerInstalacion_avisos_detail_table').prop("disabled",true);
			}else{
				$('#mantenerInstalacion_avisos_detail_table').prop("checked",false);
				$('#mantenerInstalacion_avisos_detail_table').prop("disabled",false);
			}
		}
		else{
			$('#plegadoCambioDeDomicilio').hide();
			$('#plegadoActualizacionBaja').hide();
			$('#plegadoQuejaReclamaciones').hide();
			$('#plegadoActualizacionAnularBaja').hide();
			$('#plegadoTrabajadorSocial').hide();
			
		}
		//tipo: informe social, subtipo: enviado con expediente abierto
		if($('#tipoAviso_avisos_dialogo_table').val()==TIPOAVISO_INFSOC && ($('#subTipoAviso_avisos_dialogo_table').val()==SUBTIPOAVISO_ENVEXPAB)){
			$("#detalleAportacionLayer").removeClass("d-none");
		}
		
		if($('#tipoAviso_avisos_dialogo_table').val()==TIPOAVISO_INFINT){
			$("#detalleAportacionLayer").removeClass("d-none");
		}
	}
	
	
	const limpiarPlegables = ()=>{


		//plegable baja y baja/alta
		$('#motivoDeLaBaja_avisos_dialog_table').rup_combo("clear");
		$('#identificadorDeLaLLamada_avisos_dialog_table').val('');
		$('#identificadorDeLaLLamadaAnularBaja_avisos_dialog_table').val('');
		$('#canalDeComunicacion_avisos_dialog_table').rup_combo("clear");
		$('#canalDeComunicacionAnularBaja_avisos_dialog_table').rup_combo("clear");
		$('#origenDeComunicacion_avisos_dialog_table').rup_combo("clear");
		$('#mantenerInstalacion_avisos_detail_table').prop("checked",false);
		$('#fecBaja_aviso_dialogo_table').val('');
		$('#plegable_baja').addClass("plegado");
		$('#identificadorDeLaLLamada_avisos_dialog_table').prop("disabled",true);
		$('#identificadorDeLaLLamadaAnularBaja_avisos_dialog_table').prop("disabled",true);

		//plegable quejas y reclamaciones
		$('#fechaQueja_aviso_dialogo_table').val('');
		$('#procedente_aviso_dialogo_table').rup_combo("clear");
		$('#estadoQueja_aviso_dialogo_table').rup_combo("clear");
		$('#tiempoDeResolucion_aviso_dialogo_table').val('');
		$('#motivosQueja_aviso_dialogo_table').rup_combo("clear");
		$('#plegable_quejaReclamaciones').addClass("plegado");

		$('.clsCabecera').children().addClass("mdi mdi-plus-box-outline");
	}
	
	const buscarDireccionDesdeXML = (data) =>{
		let direcciones = {
			"provincia06":	data.codProvincia,
			"municipio06": data.codMunicipio,
			"localidad06": data.codLocalidad,
			"calle06": data.codCalle,
			"portal06":data.codPortal
		};
		direcciones = JSON.stringify(direcciones);
		 $.rup_ajax({
            url: $.rup.CTX_PATH +"avisos/getDireccionDesdeXML",
			'type': 'post',
			'contentType': 'application/json',
			'dataType': 'json',
            data: direcciones,
            success: function (data){
            	console.log(data);
				if(data!=null){
					$("#idprovincia06_avisos_dialog_table").html('<option value='+data.provinciaNORA.codProvincia+'>'+data.descprovincia+'</option>');
					$("#idprovincia06_avisos_dialog_table").rup_combo("refresh");
					$("#idmunicipio06_avisos_dialog_table").html('<option value='+data.municipioNORA.codMunicipio+'>'+data.descmunicipio+'</option>');
					$("#idmunicipio06_avisos_dialog_table").rup_combo("refresh");
					$("#idlocalidad06_avisos_dialog_table").html('<option value='+data.localidadNORA.codLocalidad+'>'+data.desclocalidad+'</option>');
					$("#idlocalidad06_avisos_dialog_table").rup_combo("refresh");
					$("#idcalle06_avisos_dialog_table").html('<option value='+data.calleNORA.codCalle+'>'+data.desccalle+'</option>');
					$("#idcalle06_avisos_dialog_table").rup_combo("refresh");
					$("#idportal06_avisos_dialog_table").html('<option value='+data.portalNORA.codPortal+'>'+data.descportal+'</option>');
					$("#idportal06_avisos_dialog_table").rup_combo("refresh");


					
					$("#idprovincia06_avisos_dialog_table").rup_combo("disable");
					$("#idmunicipio06_avisos_dialog_table").rup_combo("disable");
					$("#idlocalidad06_avisos_dialog_table").rup_combo("disable");
					$("#idcalle06_avisos_dialog_table").rup_combo("disable");
					$("#idportal06_avisos_dialog_table").rup_combo("disable");
					$('#piso06_avisos_dialog_table').prop("disabled",true);
					$('#letra06_avisos_dialog_table').prop("disabled",true);
				}
				else{
					limpiarPlegableCambioDomicilio();
				}
            },
				beforeSend: function() {
					Ad74aUtils.bloquearInterfaz();
              },
              complete: function() {
              	Ad74aUtils.desBloquearInterfaz();

              },
            error: function(error){
				alert("error")

            }
      });
	}
	
	function loadDocumentos() {
		$("#link-layer").hide();
		try {
			$("#documento_table").DataTable().destroy();
		} catch (error) {}

		let tableColModels = [
			{ name: "idAviso70", index: "idAviso70", editable: false, hidden: true, orderable: false },
			{ name: "idDocAviso70", index: "idDocAviso70", editable: false, hidden: true, orderable: false },
			{ name: "idTipoDoc70", index:"idTipoDoc70", editable: true, hidden: false, orderable: false,},
			{ name: "nombreDoc70", index: "nombreDoc70", editable: true, hidden: false, orderable: false,},
			{ name: "fecAlta70",	index: "fecAlta70", editable: true, hidden: false, orderable: false,},
			{ name: "extension70",	index: "extension70", editable: true, hidden: false, orderable: false,},

		];
		let urlBase=$.rup.CTX_PATH +"docuavisos/"+ $('#avisosSolicitante').rup_table('getSelectedRows')['idAviso20'];

		

		$("#documento_table").attr("data-url-base", urlBase);

			let columnDefs =[
				{
					"targets": 3,
					"orderable":false,
				    "className": "text-center",
				    "render": function ( data, type, row, meta ) {
				             return "<a href='javascript:$.downloadDocument(\"" + row.ruta70 + "\",\""+row.nombreDoc70+"\");'>" + data + "</a>"; 
					}
				},
				{
					"targets": 5,
					"orderable":false,
				    "width":'4%',
				    "className": "text-center",
				    "render": function ( data, type, row, meta ) {
								return "<i class='mdi mdi-trash-can-outline' style='margin-right:5px;'></i>";

					}
				},
				{
					"targets": 2,
					"orderable":false,
				    "render": function ( data, type, row, meta ) {
						if(locale=='es'){
				             return row.tipoDocumentoEs;

						}return row.tipoDocumentoEu;
					}
				}
			]



	const tableDocumentos = $("#documento_table").rup_table({
		colReorder: {
			fixedColumnsLeft: 1
		},
		colModel: tableColModels,
		columnDefs : [
			{
				"targets": 2,
				"width": "70%",
			},
			{
				"targets": 3,
				"width": "20%",
			}

		], 
		primaryKey: "idDcoAviso70",
		filter: "noFilter",
		noEdit: true,
		columnDefs:columnDefs,
		createTooltipBody: false,
		select: {
			activate: false
		},
		"pageLength": 50,
		dom: 't<"container-fluid paginationContainer"' +
		  '<"row mx-0"' +
		  '<"col-6 order-3 text-right align-self-center col-sm-5 order-sm-2 col-xl-2 order-xl-1 text-xl-left">' +
		  '<"d-none"p>' +
		  '<"col-12 text-center"i>' +
		  '>' +
		  '>' +
		  'r',
		  //"paging": false,
		buttons: {
			activate: false,
			blackListButtons: ['addButton', 'editButton', 'cloneButton', 'copyButton','deleteButton','pdfButton', 'odsButton', 'csvButton', 'reportsButton'],
		},
		order: [[1, "asc"]],
	});
	$("#link-layer").show();
	}
	$.downloadDocument = function(oid, nombreDoc){
		if (oid != null
				&& oid != ''){
			//$.rup.CTX_PATH+"avisos/downloadDocumento?nombreDoc="+url+"&enlaceCodigo="+oidDocumento+"&esOid="+vieneAvisos;
			var url = $.rup.CTX_PATH+"docuavisos/downloadDocuAviso/"+oid+"?nombreDoc="+nombreDoc;
			window.open($.rup_utils.setNoPortalParam(encodeURI(url)));
		}
	}

	const iniciarDireccion = (direccion, prefix) => {
		
		// Mostrar/ocultar los datos alternativos inicialmente
		if($("#"+prefix+"idlocalidad06_detail_table").val() == ''){						
			$("#"+prefix+"localidadDesc").show();
			$("#"+prefix+"calleDesc").show();
			$("#"+prefix+"portalDesc").show();
		}else{
			$("#"+prefix+"localidadDesc").hide();
		}
		
		if($("#"+prefix+"idcalle06_detail_table").val() == ''){						
			$("#"+prefix+"calleDesc").show();
			$("#"+prefix+"portalDesc").show();
		}else{
			$("#"+prefix+"calleDesc").hide();
		}
		
		if($("#"+prefix+"idportal06_detail_table").val() == ''){
			$("#"+prefix+"portalDesc").show();
		}else{
			$("#"+prefix+"portalDesc").hide();
		}
		
		// Iniciar el componente dirección de contacto
//		console.log("Iniciar el componente");
//		console.log(direccion);
		initDirComponent({
			"prefix": prefix,
			"direccion": direccion, 
			"pisoTutelado": true,
			"callbacks": {
				"general": {
					"success": () => {											
						
			
					}
				},
				"provincia": {
					"change": () => {		
//						const sourcePath = $.rup.CTX_PATH + 'combo/pisosTutelados?idProvincia06=' + $("#"+prefix+"idprovincia06_detail_table").val() + '&idMunicipio06=' + $("#"+prefix+"idmunicipio06_detail_table").val();
//		    			$("#idPiso32_tabSolicitud_detail_table").rup_combo("setSource",sourcePath);
					},
					"success": () => {	
						$('#idprovincia06_detail_table').rup_combo("disable");
						
//						if(isSoloLecturaSolicitud){
//							$("#"+prefix+"idprovincia06_detail_table").rup_combo("disable");
//						}
					},
					"selected": () => {
						return direccion.idProvincia06;
					}
				},
				"municipio": {
					"change": () => {
//						const sourcePath = $.rup.CTX_PATH + 'combo/pisosTutelados?idProvincia06=' + $("#"+prefix+"idprovincia06_detail_table").val() + '&idMunicipio06=' + $("#"+prefix+"idmunicipio06_detail_table").val();
//		    			$("#idPiso32_tabSolicitud_detail_table").rup_combo("setSource",sourcePath);
		    			
					},
					"success": () => {
						const allOptions = $("#"+prefix+"idmunicipio06_detail_table option");
						const opts = allOptions.filter( idx => allOptions[idx].value);
						if(opts.length == 1) {
							console.log("dentro success municipio");
							direccion.idMunicipio06 = opts[0].value;
							console.log(direccion.idMunicipio06);
							$("#"+prefix+"idmunicipio06_detail_table").rup_combo("select", opts[0].value);

//							const sourcePath = $.rup.CTX_PATH + 'combo/pisosTutelados?idProvincia06=' + $("#"+prefix+"idprovincia06_detail_table").val() + '&idMunicipio06=' + $("#"+prefix+"idmunicipio06_detail_table").val();
//			    			$("#idPiso32_tabSolicitud_detail_table").rup_combo("setSource",sourcePath);
						}
//						if(isSoloLecturaSolicitud){
//							$("#"+prefix+"idmunicipio06_detail_table").rup_combo("disable");
//						}
					},
					"selected": () => {
						const allOptions = $("#"+prefix+"idmunicipio06_detail_table option");
						const opts = allOptions.filter( idx => allOptions[idx].value);
						if(opts.length == 1) {
							return opts[0].value;
						}
						return direccion.idMunicipio06;
					}
				},
				"localidad": {
					"change": () => {
 						// TODO: refrescar pisostutelados	
						
						if($("#"+prefix+"idlocalidad06_detail_table").rup_combo("value") == ''){						
							$("#"+prefix+"localidadDesc").show();
							$("#"+prefix+"calleDesc").show();
							$("#"+prefix+"portalDesc").show();
						}else{
							$("#"+prefix+"localidadDesc").hide();
						}
						//FN_verificarDireccionPisoTutelado();
					},
					"success": () => {
//						if(isSoloLecturaSolicitud) {
//							$("#"+prefix+"idlocalidad06_detail_table").rup_combo("disable");
//							$("#"+prefix+"localidadDesc").prop("disabled", false);							
//						}
						
						const allOptions = $("#"+prefix+"idlocalidad06_detail_table option");
						const opts = allOptions.filter( idx => allOptions[idx].value);
						if(opts.length == 1) {				
							direccion.idLocalidad06 = opts[0].value;
							$("#"+prefix+"idlocalidad06_detail_table").rup_combo("select", opts[0].value);
						}
						
						if($("#"+prefix+"idlocalidad06_detail_table").rup_combo("value") == ''){						
							$("#"+prefix+"localidadDesc").show();
							$("#"+prefix+"calleDesc").show();
							$("#"+prefix+"portalDesc").show();
						}else{
							$("#"+prefix+"localidadDesc").hide();
						}
						
					},
					"selected": () => {
						const allOptions = $("#"+prefix+"idlocalidad06_detail_table option");
						const opts = allOptions.filter( idx => allOptions[idx].value);
						if(opts.length == 1) {				
							return opts[0].value;
						}
						return direccion.idLocalidad06;
					}
				},
				"calle": {
					"change": () => {						
						// TODO: refrescar pisostutelados	
						
						if($("#"+prefix+"idcalle06_detail_table").rup_combo("value") == ''){
							$("#"+prefix+"calleDesc").show();
							$("#"+prefix+"portalDesc").show();
						}else{
							$("#"+prefix+"calleDesc").hide();
						}
						FN_verificarDireccionPisoTutelado();
					},
					"success": () => {
//						if(isSoloLecturaSolicitud) {
//							$("#"+prefix+"idcalle06_detail_table").rup_combo("disable");
//							$("#"+prefix+"calle06_detail_table").prop("disabled", true);
//						}
						
						const allOptions = $("#"+prefix+"idcalle06_detail_table option");
						const opts = allOptions.filter( idx => allOptions[idx].value);
						if(opts.length == 1 && $("#"+prefix+"calle06_detail_table").val() == '' ) {				
							direccion.idCalle06 = opts[0].value;
							$("#"+prefix+"idcalle06_detail_table").rup_combo("select", opts[0].value);
						}
						
					},
					"selected": () => {
						const allOptions = $("#"+prefix+"idcalle06_detail_table option");
						const opts = allOptions.filter( idx => allOptions[idx].value);
						if(opts.length == 1) {				
							return opts[0].value;
						}
						return direccion.idCalle06;
					}
				},
				"portal": {
					"change": () => {						
						// TODO: refrescar pisostutelados	
						
						if($("#"+prefix+"idportal06_detail_table").rup_combo("value") == ''){
							$("#"+prefix+"portalDesc").show();
						}else{
							$("#"+prefix+"portalDesc").hide();
						}
						if($("#"+prefix+"cp06_detail_table").val()=='' && $("#"+prefix+"idportal06_detail_table") != ''){
							const ajaxData = {
									'url': $.rup.CTX_PATH + 'nora/conseguirCP?portal='+ $("#"+prefix+"idportal06_detail_table").val() ,
									'type': 'GET',
									'contentType': 'application/json',
									'dataType': 'json',
									success: function (res) {
										$("#"+ prefix + "cp06_detail_table").val(res);
									},
									error: function (error) {
										//$("#iniciosOficio_feedback").rup_feedback('set', error.responseText, "error");	
									}
								};
								
							$.rup_ajax(ajaxData);
						}
						//FN_verificarDireccionPisoTutelado();
					},
					"success": () => {						
//						if(isSoloLecturaSolicitud) {
//							$("#"+prefix+"idportal06_detail_table").rup_combo("disable");
//							$("#"+prefix+"portal06_detail_table").prop("disabled", true);
//						}
						
						const allOptions = $("#"+prefix+"idportal06_detail_table option");
						const opts = allOptions.filter( idx => allOptions[idx].value);
						if(opts.length == 1  && $("#"+prefix+"portal06_detail_table").val() == ''  ) {				
							direccion.idPortal06 = opts[0].value;
							$("#"+prefix+"idportal06_detail_table").rup_combo("select", opts[0].value);
						}
						//FN_verificarDireccionPisoTutelado();
					},
					"selected": () => {
						const allOptions = $("#"+prefix+"idportal06_detail_table option");
						const opts = allOptions.filter( idx => allOptions[idx].value);
						if(opts.length == 1) {				
							return opts[0].value;
						}
						return direccion.idPortal06;
					}
				}
			}
		});
	}

  initTable();
  Ad74aUtils.hacerPlegable();
});
