var KEY_RELLENAR="KEY_RELLENAR";

var KEY_FINALIZAR="KEY_FINALIZAR";

var KEY_GRABAR_NO="KEY_GRABAR_NO";

var KEY_SALIR="KEY_SALIR";

var KEY_IGNORAR="KEY_IGNORAR";

var KEY_CONSULTAR="KEY_CONSULTAR";

var MODULO = "Cuestionarios";



var PERFIL_1="1";//Superusuario

var PERFIL_2="2";//Con provincia restringida

var PERFIL_3="3";//Con provincia y municipio restringidos



var provinciaActual="";

var municipioActual="";



function onLoadPage(){

	

	var desdeLogin=true;



	resetearRadios();

	resetearIndicadorModificacion();



	if(document.forms["formWellcomeSM"].elements["filtro(codProv)"].value!=""){//Viene de la ventana de alta

		desdeLogin=false;

		document.forms["formWellcomeSM"].elements["filtro(codigoProvincia)"].value=document.forms["formWellcomeSM"].elements["filtro(codProv)"].value;

	} else if (codProvincia != ""){//Cuando ha hecho login tenia informado la provincia

		document.forms["formWellcomeSM"].elements["filtro(codigoProvincia)"].value=codProvincia;

	}

	else document.forms["formWellcomeSM"].elements["filtro(codigoProvincia)"].value=document.forms["formWellcomeSM"].elements["filtro(comboProvincia)"].options[0].value;

	informarCampoTextProv();

	cargarMunicipiosLauncher();

	if(document.forms["formWellcomeSM"].elements["filtro(codMuni)"].value!=""){//Viene de la ventana de alta

		document.forms["formWellcomeSM"].elements["filtro(codigoMunicipio)"].value=document.forms["formWellcomeSM"].elements["filtro(codMuni)"].value;	

	}

	else if(codMunicipio!=""){

		document.forms["formWellcomeSM"].elements["filtro(codigoMunicipio)"].value=codMunicipio;	

	}

	else document.forms["formWellcomeSM"].elements["filtro(codigoMunicipio)"].value=document.forms["formWellcomeSM"].elements["filtro(comboMunicipio)"].options[0].value;

	informarCampoTextMuni();

	deshabilitarCamposFormulario();

	obtenerNumCuestionarios();

	

	if(desdeLogin){

		if(Number(perfilUsuario) == 1){

			document.all["filtro(codigoProvincia)"].focus();	

		}

		if(Number(perfilUsuario) == 2){

			document.all["filtro(codigoMunicipio)"].focus();

		}

		if(Number(perfilUsuario) == 3){

			document.forms["formWellcomeSM"].elements["siNoSM"][0].checked = true;

			document.forms["formWellcomeSM"].elements["siNoSM"][0].focus();

			accionesRespSi();

		}

	}

	else{

			document.forms["formWellcomeSM"].elements["siNoSM"][0].checked = true;

			document.forms["formWellcomeSM"].elements["siNoSM"][0].focus();

			accionesRespSi();

	}

	cargarValoresCombos();



	//Si volvemos de grabar que no, vamos a preguntar si el usuario quiere salir de la aplicacion o no

	if(document.forms["formWellcomeSM"].elements["accion"].value=="KEY_GRABAR_NO"){

		document.forms["formWellcomeSM"].elements["accion"].value="";

		if(confirm(msgSalir))

			submmitFormulario(KEY_SALIR);

	}

}





function deshabilitarCamposFormulario(){

	if(Number(perfilUsuario)>1){//No es superusuario

		document.forms["formWellcomeSM"].elements["filtro(comboProvincia)"].disabled=true;

		document.forms["formWellcomeSM"].elements["filtro(codigoProvincia)"].disabled=true;

		document.all["filtro(comboMunicipio)"].focus();

	}

	if(perfilUsuario=="3"){

		document.forms["formWellcomeSM"].elements["filtro(comboMunicipio)"].disabled=true;

		document.forms["formWellcomeSM"].elements["filtro(codigoMunicipio)"].disabled=true;

		document.all["filtro(tipoCuestionario)"][0].focus();

	}

}





function ponAccion(key){

	if(key==KEY_RELLENAR){

		 if(document.forms["formWellcomeSM"].elements["siNoSM"][0].checked){

			if(validarPrevSuelo())

				submmitFormulario(KEY_RELLENAR);

		 }

	}

	else if (key==KEY_FINALIZAR){

		if(validarPrevSuelo())

			validarRespuesta();

	}

	else if(key==KEY_GRABAR_NO){

		submmitFormulario(KEY_GRABAR_NO);		

	}

	else if(key==KEY_SALIR){

		submmitFormulario(KEY_SALIR);

	}

	else if(key==KEY_IGNORAR){

		return false;	

	}

}



function validarPrevSuelo(){

	if(document.forms["formWellcomeSM"].elements["prevSueloInicial"].value!=""){//Ya existe grupo para los datos seleccionado

		if(document.forms["formWellcomeSM"].elements["prevSueloInicial"].value=="0" && document.forms["formWellcomeSM"].elements["filtro(prevSuelo)"].value=="1"){//Primero se guardó con un No, y ahora se pretende guardar SI

				if(confirm(msgPrevSuelo)){

					document.forms["formWellcomeSM"].elements["filtro(modificarPrevSuelo)"].value="1";

					//submmitFormulario(KEY_RELLENAR);

					return true;

				}

				else return false;

		}else if(document.forms["formWellcomeSM"].elements["prevSueloInicial"].value=="1" && document.forms["formWellcomeSM"].elements["filtro(prevSuelo)"].value=="0"){//Primero se guardó con un SI y ahora se pretende guardar NO

			//alert(msgExistenCuestionarios);

			if(confirm(msgExistenCuestionarios)){

				document.forms["formWellcomeSM"].elements["filtro(modificarPrevSuelo)"].value="1";

				return true;

			}else return false;

		}

	}

	return true;

}



function validarRespuesta(){

	if(document.forms["formWellcomeSM"].elements["siNoSM"][1].checked){ //Ha seleccionado "No"

		if(confirm(msgRespNo)){

			//sigue adelante grabando que no

			alert(msgGrabarNo);

			ponAccion(KEY_GRABAR_NO);

		}else{

			//no quiere grabar que no, preguntamos si quiere salir o no

			if (confirm(msgSalirSinRellenar)){

				ponAccion(KEY_SALIR);

			}else{

				return;

			}		

		}

	}

	else if(document.forms["formWellcomeSM"].elements["siNoSM"][0].checked){ //Ha seleccionado "Sí"

		if(document.forms["formWellcomeSM"].elements["filtro(numCuestionariosSM)"].value==0 || document.forms["formWellcomeSM"].elements["filtro(numCuestionariosSM)"].value==""){//No ha rellenado ningún cuestioanrio

			if(confirm(msgSalirSinRellenar))

				ponAccion(KEY_SALIR);

			else ponAccion(KEY_IGNORAR);

		}

		else{//Ha rellenado algún cuestionario

			if(confirm(msgSalir))

				ponAccion(KEY_SALIR);

			else ponAccion(KEY_IGNORAR);

		}

	}

	else { //No ha seleccionado ninguna respuesta

		if(confirm(msgSalirSinRellenar))

			ponAccion(KEY_SALIR);

		else ponAccion(KEY_IGNORAR);

	

	}

}



function submmitFormulario(key){

	if(key!=KEY_SALIR){

		document.forms["formWellcomeSM"].elements["filtro(municipio)"].value = document.forms["formWellcomeSM"].elements["filtro(comboMunicipio)"].options[document.forms["formWellcomeSM"].elements["filtro(comboMunicipio)"].selectedIndex].text;

		document.forms["formWellcomeSM"].elements["filtro(descMuni)"].value = document.forms["formWellcomeSM"].elements["filtro(comboMunicipio)"].options[document.forms["formWellcomeSM"].elements["filtro(comboMunicipio)"].selectedIndex].text;

	}

	else{

		document.forms["formWellcomeSM"].elements["filtro(codProv)"].value="";

		document.forms["formWellcomeSM"].elements["filtro(codMuni)"].value="";

		document.forms["formWellcomeSM"].elements["filtro(obsSuelo)"].value="";

	}

	document.forms["formWellcomeSM"].accion.value=key;

	document.forms["formWellcomeSM"].submit();

}



function territorioChange(){

	borrarNiGrupoCuestionarioSM();

	resetearNumCuestionarios();

	resetearMunicipio();

	informarCampoCodProv();

	cargarMunicipiosLauncher();

	informarCampoCodMuni();

	resetearIndicadorModificacion();

	obtenerNumCuestionarios();

	cargarValoresCombos();

}



function municipioChange(){

	informarCampoCodMuni();

	borrarNiGrupoCuestionarioSM();

	resetearNumCuestionarios();

	resetearIndicadorModificacion();

	obtenerNumCuestionarios();

	cargarValoresCombos();

}



function mesChange(){

	borrarNiGrupoCuestionarioSM();

	resetearNumCuestionarios();

	resetearIndicadorModificacion();

	obtenerNumCuestionarios();

}



function accionesRespNo(){

	alert(msgOpcionNo);

	deshablitarBtnRellenar();

	informarPrevSuelo(0);

	mostrarObservaciones();

}



function accionesRespSi(){

	hablitarBtnRellenar();

	informarPrevSuelo(1);

	ocultarObservaciones();

} 



function provinciaOnBlur(){

	if(existeValorCombo( document.forms["formWellcomeSM"].elements["filtro(codigoProvincia)"].value, document.forms["formWellcomeSM"].elements["filtro(comboProvincia)"])){

		informarCampoTextProv();

		territorioChange();

	}else{

		alert(msgNoExisteProv);

		document.forms["formWellcomeSM"].elements["filtro(codigoProvincia)"].value=provinciaActual;

		document.all["filtro(codigoProvincia)"].focus();

	}

}



function municipioOnBlur(){

	if(existeValorCombo(document.forms["formWellcomeSM"].elements["filtro(codigoMunicipio)"].value, document.forms["formWellcomeSM"].elements["filtro(comboMunicipio)"])){

		informarCampoTextMuni();

		municipioChange();

	}else{

		alert(msgNoExisteMuni);

		document.forms["formWellcomeSM"].elements["filtro(codigoMunicipio)"].value=municipioActual;

		document.all["filtro(codigoMunicipio)"].focus();

	}



}



function resetearMunicipio(){

	document.forms["formWellcomeSM"].elements["filtro(codMuni)"].value="";

	document.forms["formWellcomeSM"].elements["filtro(comboMunicipio)"].options.length=0;

	document.forms["formWellcomeSM"].elements["filtro(codigoMunicipio)"].value="";

}



function informarCampoCodProv(){

	document.forms["formWellcomeSM"].elements["filtro(codProv)"].value=document.forms["formWellcomeSM"].elements["filtro(comboProvincia)"].value;

	document.forms["formWellcomeSM"].elements["filtro(codigoProvincia)"].value=document.forms["formWellcomeSM"].elements["filtro(comboProvincia)"].value;

}



function informarCampoTextProv(){

	document.forms["formWellcomeSM"].elements["filtro(codProv)"].value=document.forms["formWellcomeSM"].elements["filtro(codigoProvincia)"].value;

	document.forms["formWellcomeSM"].elements["filtro(comboProvincia)"].value=document.forms["formWellcomeSM"].elements["filtro(codigoProvincia)"].value;

}



function informarCampoCodMuni(){

	document.forms["formWellcomeSM"].elements["filtro(codMuni)"].value=document.forms["formWellcomeSM"].elements["filtro(comboMunicipio)"].value;

	document.forms["formWellcomeSM"].elements["filtro(codigoMunicipio)"].value=document.forms["formWellcomeSM"].elements["filtro(comboMunicipio)"].value;

}



function informarCampoTextMuni(){

	document.forms["formWellcomeSM"].elements["filtro(codMuni)"].value=document.forms["formWellcomeSM"].elements["filtro(codigoMunicipio)"].value;

	document.forms["formWellcomeSM"].elements["filtro(comboMunicipio)"].value=document.forms["formWellcomeSM"].elements["filtro(codigoMunicipio)"].value;

}



function cargarMunicipiosLauncher(){

	where = "PROVINCIA_ID = " + document.forms["formWellcomeSM"].elements["filtro(codProv)"].value;

	if(codMunicipio!="")

		where = where + " AND ID = " + codMunicipio;

	

	cargarComboDataLauncherOrdenado(MODULO,idioma,"NORA_T17_MUNICIPIO","id","ds_o", "filtro(comboMunicipio)", where, "false", false, "ds_o", "ASC");

}



//Función que obtiene el numero de cuestionarios realizados de Obra Mayor, Suelo Municipal y Alquiler Municipal

//Además, también obtiene la previsión del suelo para los datos selccionados (en caso de que exista el grupo)

function obtenerNumCuestionarios(){

	var GDTP = new ARQ_GDTP();

	GDTP.addGroup("APP_PARAMETERS");

	GDTP.addProperty("APP_PARAMETERS","CLASSNAME","q02b.exe.comun.Q02bCoddataLauncher");

	GDTP.addProperty("APP_PARAMETERS","METHOD","getNumCuestionariosPortadaSM");

	GDTP.addGroup("APP_DATA");

	GDTP.addProperty("APP_DATA","mesReferencia","");//Está vacío

	GDTP.addProperty("APP_DATA","anyoReferencia",document.forms["formWellcomeSM"].elements["filtro(ano)"].value);

	GDTP.addProperty("APP_DATA","territorio",document.forms["formWellcomeSM"].elements["filtro(codProv)"].value);

	GDTP.addProperty("APP_DATA","municipio",document.forms["formWellcomeSM"].elements["filtro(codMuni)"].value);

	var response 	= Comm.submitGDTP(GDTP,"/q02b"+MODULO+"War/comunJSP/q02blauncher.jsp?" + getIndNoPortalParaUrl(),"POST");

	var result 		= response.getProperty("RESULT_1","RESULT");

	if(result=="OK"){

		//document.forms["formWellcomeSM"].elements["niGrupoCuesSMAnu"].value=response.getProperty("RESULT_1","niGrupoCuesSMAnu");	

		document.forms["formWellcomeSM"].elements["filtro(numCuestionariosSM)"].value=response.getProperty("RESULT_1","numCuestionariosSM");

		document.forms["formWellcomeSM"].elements["prevSueloInicial"].value=response.getProperty("RESULT_1","prevSueloInicial");

	}

	comprobarBotonesListados();

}





function borrarNiGrupoCuestionarioSM(){

	document.forms["formWellcomeSM"].elements["niGrupoCuesSMAnu"].value="";

}



function resetearNumCuestionarios(){

	document.forms["formWellcomeSM"].elements["filtro(numCuestionariosSM)"].value="";

}



function resetearRadios(){

	deshablitarBtnRellenar();

	document.forms["formWellcomeSM"].elements["siNoSM"][0].checked=false;

	document.forms["formWellcomeSM"].elements["siNoSM"][1].checked=false;

}



function deshablitarBtnRellenar(){

	document.forms["formWellcomeSM"].btnRellenarSM.disabled=true;

}



function hablitarBtnRellenar(){

	document.forms["formWellcomeSM"].btnRellenarSM.disabled=false;

}



function informarPrevSuelo(valor){

	document.forms["formWellcomeSM"].elements["filtro(prevSuelo)"].value=valor;

}



function mostrarObservaciones(){

	document.all["divObservaciones"].style.display="block";

	document.forms["formWellcomeSM"].elements["filtro(obsSuelo)"].focus();

}



function ocultarObservaciones(){

	document.forms["formWellcomeSM"].elements["filtro(obsSuelo)"].value="";

	document.all["divObservaciones"].style.display="none";

}



function resetearIndicadorModificacion(){

	document.forms["formWellcomeSM"].elements["filtro(modificarPrevSuelo)"].value="0";	

}



function cargarValoresCombos(){

	provinciaActual=document.forms["formWellcomeSM"].elements["filtro(codigoProvincia)"].value;

	municipioActual=document.forms["formWellcomeSM"].elements["filtro(codigoMunicipio)"].value;

		

}



function comprobarBotonesListados(){

	if(document.forms["formWellcomeSM"].elements["filtro(numCuestionariosSM)"].value==0 || document.forms["formWellcomeSM"].elements["filtro(numCuestionariosSM)"].value=="")

		document.forms["formWellcomeSM"].btnConsultarSM.disabled=true;	

	else document.forms["formWellcomeSM"].btnConsultarSM.disabled=false;	

}



function consultarSMClick(){

	submmitFormulario(KEY_CONSULTAR);

}