
function actualizaNumHabitantes(){
    var selectHabitantes = document.getElementById("numHabitantes").value;
    // BORRAMOS LO QUE HUBIERA
    var aux = numHabitantes;
    for(var i=1; i<aux; i++){
        document.getElementById("listaHabitantes").removeChild(document.getElementById("habitante_"+i));
        numHabitantes--;
    }
    
    for(var i=1;i<selectHabitantes;i++){
        anyadeHabitante("Persona", "Nombre", "G&eacute;nero", "Hombre", "Mujer", "Fecha de nacimiento", "D&iacute;a", "Mes", "A&ntilde;o");
    }
    
}
var numPlanoCasa = 1;
var numFotoCasa = 1;

function actualizaNumPlantas(){
    var numPlantas = document.getElementById("numPlantas").value;
    //alert("ACTUAL " + numPlanoCasa + " NUEVO " + numPlantas);
    var aux = numPlanoCasa;
    // BORRAMOS LO QUE HUBIERA
    for(var i=1; i<aux; i++){
        document.getElementById("planoCasa").removeChild(document.getElementById("divPlanoCasa_"+i));
        numPlanoCasa--;
    }
    
    for(var i=0;i<numPlantas-1;i++)
        anyadePlanoCasa();
}

function actualizaNumFotos(){
    var numFotos = document.getElementById("numFotos").value;
    var aux = numFotoCasa;
    // BORRAMOS LO QUE HUBIERA
    for(var i=1; i<aux; i++){
        document.getElementById("fotoCasa").removeChild(document.getElementById("divFotoCasa_"+i));
        numFotoCasa--;
    }
    
    for(var i=0;i<numFotos-1;i++)
        anyadeImagenCasa();
}

function anyadePlanoCasa(){
    var divPlanoCasa = document.createElement("div");
    divPlanoCasa.id = "divPlanoCasa_" + numPlanoCasa;
    var inputPlanoCasa = document.createElement("input");
    inputPlanoCasa.type = "file";
    inputPlanoCasa.id = "imagenPlano_" + numPlanoCasa;
    inputPlanoCasa.name = "imagenPlano_" + numPlanoCasa;
    numPlanoCasa++;
    divPlanoCasa.appendChild(document.createTextNode("Planta " + numPlanoCasa + ": "));
    divPlanoCasa.appendChild(inputPlanoCasa);
    divPlanoCasa.appendChild(document.createElement("br"));
    document.getElementById("planoCasa").appendChild(divPlanoCasa);
    //document.getElementById("planoCasa").
    //document.getElementById("planoCasa").
}

function anyadeImagenCasa(){
    var divPlanoCasa = document.createElement("div");
    divPlanoCasa.id = "divFotoCasa_" + numFotoCasa;
    var inputPlanoCasa = document.createElement("input");
    inputPlanoCasa.type = "file";
    inputPlanoCasa.id = "imagenCasa_" + numFotoCasa;
    inputPlanoCasa.name = "imagenCasa_" + numFotoCasa;
    numFotoCasa++;
    divPlanoCasa.appendChild(document.createTextNode("Foto " + numFotoCasa + ": "));
    divPlanoCasa.appendChild(inputPlanoCasa);
    divPlanoCasa.appendChild(document.createElement("br"));
    document.getElementById("fotoCasa").appendChild(divPlanoCasa);
    //document.getElementById("planoCasa").
    //document.getElementById("planoCasa").
}


function oculta(capa){
    var menu = document.getElementById(capa);
    menu.style.display = "none";
}
function despliega(capa){
    var menu = document.getElementById(capa);
    menu.style.display = "block";
}


// VALIDA EL FORMULARIO
function validaForm(){
    
    var validacion = true;
    
    // VALIDAMOS LOS DATOS PARA LOS HABITANTES
    for(var i=0;i<numHabitantes;i++){        
        var nombre = document.getElementById("nombre_"+i);
        var diaNac = document.getElementById("dia_"+i);
        var mesNac = document.getElementById("mes_"+i);
        var anyoNac = document.getElementById("ano_"+i);
        var hombre = document.getElementById("hombre_"+i);
        var mujer = document.getElementById("mujer_"+i);
        if(nombre.value == '') {oculta('paso2');oculta('paso3');despliega('paso1'); nombre.focus(); alert("Falta el nombre del habitante " + (i+1));  return false;}
        if(diaNac.value == '') {oculta('paso2');oculta('paso3');despliega('paso1'); diaNac.focus();alert("Falta el día de nacimiento del habitante " + (i+1)); return false;}
        if(mesNac.value == '') {oculta('paso2');oculta('paso3');despliega('paso1'); mesNac.focus();alert("Falta el mes de nacimiento del habitante " + (i+1)); return false;}
        if(anyoNac.value == '') {oculta('paso2');oculta('paso3');despliega('paso1'); anyoNac.focus();alert("Falta el año de nacimiento del habitante " + (i+1)); return false;}        
        if(hombre.checked==false && mujer.checked==false) {oculta('paso2');oculta('paso3');despliega('paso1'); hombre.focus();alert("Falta el género de nacimiento del habitante " + (i+1)); return false;}
    }
    
    // VALIDAMOS LOS DATOS DE LA CASA
    var anyoConstruccion = document.getElementById("anyoConstruccion");
    var gradosOrientacion = document.getElementById("gradosOrientacion");
    var minutosOrientacion = document.getElementById("minutosOrientacion");
    var tengoPlano = document.getElementById("tengoPlano");
    var noTengoPlano = document.getElementById("noTengoPlano");
    var formaRegular = document.getElementById("forma_regular");
    var formaIregular = document.getElementById("forma_iregular");
    var tengoCoordenadas = document.getElementById("tengoCoordenadas");
    var noTengoCoordenadas = document.getElementById("noTengoCoordenadas");
    var gradosVertical = document.getElementById("gradosVertical");
    var minutosVertical = document.getElementById("minutosVertical");
    var segundosVertical = document.getElementById("segundosVertical");
    var gradosHorizontal = document.getElementById("gradosHorizontal");
    var minutosHorizontal = document.getElementById("minutosHorizontal");
    var segundosHorizontal = document.getElementById("segundosHorizontal");
    var direccion = document.getElementById("direccion");
    var ciudad = document.getElementById("ciudad");
    var provincia = document.getElementById("provincia");
    var pais = document.getElementById("idPais");
    var cp = document.getElementById("cp");
    var nombreSolicitante = document.getElementById("nombre_sol");
    var emailSolicitante = document.getElementById("email_sol");
    var direccionSolicitante = document.getElementById("direccion_sol");
    var ciudadSolicitante = document.getElementById("ciudad_sol");
    var provinciaSolicitante = document.getElementById("provincia_sol");
    var paisSolicitante = document.getElementById("idPais_sol");
    var cpSolicitante = document.getElementById("cp_sol");
    var pagoTransferencia = document.getElementById("pagoTransferencia");
    var pagoTarjeta = document.getElementById("pagoTarjeta");
    if(anyoConstruccion.value == '') {oculta('paso1');oculta('paso3');despliega('paso2'); anyoConstruccion.focus(); alert("Falta el año de construcción de la casa"); return false;}
    if(gradosOrientacion.value == '' || minutosOrientacion.value == '') {oculta('paso1');oculta('paso3');despliega('paso2'); orientacion.focus(); alert("Falta la orientación de la casa"); return false;}
    if(tengoPlano.checked == false && noTengoPlano.checked == false) {oculta('paso1');oculta('paso3');despliega('paso2'); alert("Falta indicar si tienes planos de la casa"); return false;}
    // SI NO TENGO PLANOS FALTA INDICAR LA FORMA
    if(noTengoPlano.checked == true && formaRegular.checked == false && formaIregular.checked == false) {oculta('paso1');oculta('paso3');despliega('paso2'); alert("Falta indicar la forma de la casa"); return false;}
    
    if(tengoCoordenadas.checked == false && noTengoCoordenadas.checked == false) {oculta('paso1');oculta('paso3');despliega('paso2'); alert("Falta indicar si tienes las coordenadas de la casa"); return false;}
    // SI NO TENGO COORDENADAS TENGO QUE INDICAR LA DIRECCION
    if(tengoCoordenadas.checked == true && gradosVertical.value == '') {oculta('paso1');oculta('paso3');despliega('paso2'); gradosVertical.focus();alert("Faltan los grados de orientación de la casa"); return false;}
    if(tengoCoordenadas.checked == true && minutosVertical.value == '') {oculta('paso1');oculta('paso3');despliega('paso2'); minutosVertical.focus();alert("Faltan los minutos de orientación de la casa"); return false;}
    if(tengoCoordenadas.checked == true && segundosVertical.value == '') {oculta('paso1');oculta('paso3');despliega('paso2'); segundosVertical.focus();alert("Faltan los segundos de orientación de la casa"); return false;}
    if(tengoCoordenadas.checked == true && gradosHorizontal.value == '') {oculta('paso1');oculta('paso3');despliega('paso2'); gradosHorizontal.focus();alert("Faltan los grados de orientación de la casa"); return false;}
    if(tengoCoordenadas.checked == true && minutosHorizontal.value == '') {oculta('paso1');oculta('paso3');despliega('paso2'); minutosHorizontal.focus();alert("Faltan los minutos de orientación de la casa"); return false;}
    if(tengoCoordenadas.checked == true && segundosHorizontal.value == '') {oculta('paso1');oculta('paso3');despliega('paso2'); segundosHorizontal.focus();alert("Faltan los segundos de orientación de la casa"); return false;}
    if(noTengoCoordenadas.checked == true && direccion.value == '') {oculta('paso1');oculta('paso3');despliega('paso2'); direccion.focus();alert("Falta la dirección de la casa"); return false;}
    if(noTengoCoordenadas.checked == true && ciudad.value == '') {oculta('paso1');oculta('paso3');despliega('paso2'); ciudad.focus();alert("Falta la ciudad de la casa"); return false;}
    if(noTengoCoordenadas.checked == true && provincia.value == '') {oculta('paso1');oculta('paso3');despliega('paso2'); provincia.focus();alert("Falta la provincia de la casa"); return false;}
    if(noTengoCoordenadas.checked == true && cp.value == '') {oculta('paso1');oculta('paso3');despliega('paso2'); cp.focus();alert("Falta el código postal de la casa"); return false;}
    if(noTengoCoordenadas.checked == true && pais.value == '') {oculta('paso1');oculta('paso3');despliega('paso2'); cp.focus();alert("Falta el país de la casa"); return false;}
    if(nombreSolicitante.value == '') {oculta('paso1');oculta('paso2');despliega('paso3'); nombreSolicitante.focus();alert("Falta el nombre y apellidos del solicitante"); return false;}
    if(emailSolicitante.value == '') { oculta('paso1');oculta('paso2');despliega('paso3'); emailSolicitante.focus();alert("Falta el e-mail del solicitante"); return false;}
    if(direccionSolicitante.value == '') { oculta('paso1');oculta('paso2');despliega('paso3'); direccionSolicitante.focus();alert("Falta la dirección del solicitante"); return false;}
    if(ciudadSolicitante.value == '') {oculta('paso1');oculta('paso2');despliega('paso3'); ciudadSolicitante.focus(); alert("Falta la ciudad del solicitante"); return false;}
    if(provinciaSolicitante.value == '') {oculta('paso1');oculta('paso2');despliega('paso3'); provinciaSolicitante.focus(); alert("Falta la provincia del solicitante"); return false;}
    if(paisSolicitante.value == '') {oculta('paso1');oculta('paso2');despliega('paso3'); provinciaSolicitante.focus(); alert("Falta el país del solicitante"); return false;}
    if(cpSolicitante.value == '') {oculta('paso1');oculta('paso2');despliega('paso3'); cpSolicitante.focus();alert("Falta el cp del solicitante"); return false;}
    if(pagoTransferencia.checked == false && pagoTarjeta.checked == false) {oculta('paso1');oculta('paso2');despliega('paso3'); alert("Falta seleccionar la forma de pago"); return false;}
    
    var aprobar = document.getElementById("aprobar");
    if(aprobar.checked == false) {aprobar.focus();alert("Debe aprobar las condiciones generales de venta"); return false;}
    
    return validacion;
    
}


function validaFormCurso(thisform){
    
    var validacion = true;
    
    myOption = -1;
    for (i=thisform.idCurso.length-1; i > -1; i--) {
        if (thisform.idCurso[i].checked) {
            myOption = i; i = -1;
        }
    }
    
    if (myOption == -1) {
        validacion = false;        
        alert("Tienes que seleccionar algún curso");    
        oculta('paso2');despliega('paso1');
        return false;
    }

    
    var nombreSolicitante = document.getElementById("nombre_sol");
    var emailSolicitante = document.getElementById("email_sol");
    var direccionSolicitante = document.getElementById("direccion_sol");
    var ciudadSolicitante = document.getElementById("ciudad_sol");
    var provinciaSolicitante = document.getElementById("provincia_sol");
    var paisSolicitante = document.getElementById("idPais_sol");
    var cpSolicitante = document.getElementById("cp_sol");
    var pagoTransferencia = document.getElementById("pagoTransferencia");
    var pagoTarjeta = document.getElementById("pagoTarjeta");
    
    if(nombreSolicitante.value == '') {oculta('paso1');despliega('paso2'); nombreSolicitante.focus();alert("Falta el nombre y apellidos del solicitante"); return false;}
    if(emailSolicitante.value == '') { oculta('paso1');despliega('paso2'); emailSolicitante.focus();alert("Falta el e-mail del solicitante"); return false;}
    if(direccionSolicitante.value == '') { oculta('paso1');despliega('paso2'); direccionSolicitante.focus();alert("Falta la dirección del solicitante"); return false;}
    if(ciudadSolicitante.value == '') {oculta('paso1');despliega('paso2'); ciudadSolicitante.focus(); alert("Falta la ciudad del solicitante"); return false;}
    if(provinciaSolicitante.value == '') {oculta('paso1');despliega('paso2'); provinciaSolicitante.focus(); alert("Falta la provincia del solicitante"); return false;}
    if(paisSolicitante.value == '') {oculta('paso1');despliega('paso2'); provinciaSolicitante.focus(); alert("Falta el país del solicitante"); return false;}
    if(cpSolicitante.value == '') {oculta('paso1');;despliega('paso2'); cpSolicitante.focus();alert("Falta el cp del solicitante"); return false;}
    var cursoGratis = document.getElementById("curso_2").checked;
    if(pagoTransferencia.checked == false && pagoTarjeta.checked == false && cursoGratis == false) {oculta('paso1');despliega('paso2'); alert("Falta seleccionar la forma de pago"); return false;}
    
    var aprobar = document.getElementById("aprobar");
    if(aprobar.checked == false) {aprobar.focus();alert("Debe aprobar las condiciones generales de venta"); return false;}
    
    return validacion;

}

/* Comprobar campos del formulario */

function esNumerico(strString)
{
var strValidChars = "0123456789.-";
var strChar;
var blnResult = true;

if (strString.length == 0) return true;

//  test strString consists of valid characters listed above
for (i = 0; i < strString.length && blnResult == true; i++)
{
    strChar = strString.charAt(i);
    if (strValidChars.indexOf(strChar) == -1)
        {
            blnResult = false;
        }
    }
    return blnResult;
}
function esEmail(campo){var strMail = campo;var patMail = /^(.+)@(.+)$/;var patUser = /^[a-zA-Z\d_-]+(\.[a-zA-Z\d_-]+)*$/;var patDomainIP = /^(\d{1,3})\.(\d{1,3})\.(\d{1,3})\.(\d{1,3})$/;var patDomain = /^[a-zA-Z\d_-]+(\.[a-zA-Z\d_-]+)+$/;var matchArray = strMail.match(patMail);if(matchArray == null) {  return false; }  var user = new String(matchArray[1]);  var domain = new String(matchArray[2]);  if(user.match(patUser) == null)  {   return false;  }  var IPArray = domain.match(patDomainIP);  if(IPArray != null)  {   for (var i=1;i<=4;i++)   {    	if(IPArray[i]>255)    {     		return false;    	}  }   return true;  }  var domainArray = domain.match(patDomain);    if(domainArray == null)  {     return false;  }    if(domainArray[domainArray.length - 1].length < 3 || domainArray[domainArray.length - 1].length > 4)  {      return false;  }  return true;}
        
// Para comprobar que las claves introducidas son las mimas.
function sonIguales (clave1, clave2, theField)
{
    if (clave1 == clave2) {
        return true
    }
}

// Para comprobar si acepta las condiciones
function isChecked (s)
{
    if (s[0].value=="ON" && s[0].checked==true) {
        return true
    }
}
        
/* Para el formulario Registro */
function validarregistro(){
    var f = window.document.registrouser;
    if (!(f.nombre.value))
        {
            alert('El campo "Nombre" debe tener algún valor.');f.nombre.select();f.nombre.focus();return false;
        }
        if (!(f.email.value))
            {
                alert('El campo "E-mail" debe tener algún valor.');f.email.select();f.email.focus();return false;
            }
            if ((f.email.value)) {
                if (!esEmail(f.email.value))
                    {
                        alert('El campo "E-mail" debe ser un e-mail válido.'); f.email.select();f.email.focus();return false;
                    }
                }
                if (!(f.clave1.value))
                    {
                        alert('El campo "Contraseña" debe tener algún valor.');f.clave1.select();f.clave1.focus();return false;
                    }
                    if (!(f.clave2.value))
                        {
                            alert('El campo "Verificar contraseña" debe tener algún valor.');f.clave2.select();f.clave2.focus();return false;
                        }
                        if (!sonIguales(f.clave1.value,f.clave2.value,f.clave2.value))
                            {
                                alert('Por favor "Verificar contraseña", ha de ser igual que en el campo "Contraseña".');f.clave2.select();f.clave2.focus();return false;
                            }
                            return true;
                        }
                                
                                
                                
/* PARA LA PAGINA DE PETICION DE CONSULTA */
var numHabitantes = 1;
var celdasPlano = new Array(10);
celdasPlano[1]=celdasPlano[2]=celdasPlano[3]=celdasPlano[4]=celdasPlano[5]="";
celdasPlano[6]=celdasPlano[7]=celdasPlano[8]=celdasPlano[9]="";
                                
function anyadeHabitante(cadPersona, cadNombre, cadGenero, cadHombre, cadMujer, cadFNac, cadDia, cadMes, cadAnyo){

    var fieldset = document.createElement("fieldset");
    fieldset.id = "habitante_" + numHabitantes;
    var cadena = "";
    //cadena +="<fieldset id=\"habitante_" + numHabitantes + ""\">";
    cadena +="   <legend><strong>" + cadPersona + " " + (numHabitantes+1) + "</strong></legend>";
    cadena +="   <p><label for=\"nombre_" + numHabitantes + "\"><strong>" + cadNombre + "</strong>: <input name=\"nombre_" + numHabitantes + "\" id=\"nombre_" + numHabitantes + "\" size=\"30\" maxlength=\"50\" /></label></p>";
    cadena +="   <p><label for=\"genero_" + numHabitantes + "\"><strong>" + cadGenero + "</strong>:<label for=\"hombre_" + numHabitantes + "\"><input class=\"radio\" type=\"radio\" id=\"hombre_" + numHabitantes + "\" name=\"genero_" + numHabitantes + "\" value=\"1\" />" + cadHombre + "</label>";
    cadena +="	 &nbsp;&nbsp;<label for=\"mujer_" + numHabitantes + "\"><input class=\"radio\" type=\"radio\" id=\"mujer_" + numHabitantes + "\" name=\"genero_" + numHabitantes + "\" value=\"2\" />" + cadMujer + "</label></label></p>";
    cadena +="   <p><strong>" + cadFNac + "</strong>: <label for=\"dia_" + numHabitantes + "\">" + cadDia + ": <input name=\"dia_" + numHabitantes + "\" id=\"dia_" + numHabitantes + "\" size=\"2\" maxlength=\"2\" value=\"\" /></label>&nbsp;&nbsp;<label for=\"mes_" + numHabitantes + "\">" + cadMes + ": <input name=\"mes_" + numHabitantes + "\"id=\"mes_" + numHabitantes + "\" size=\"2\" maxlength=\"2\" value=\"\" /></label>&nbsp;&nbsp;<label for=\"ano_" + numHabitantes + "\">" + cadAnyo + ": <input name=\"anyo_" + numHabitantes + "\" id=\"ano_" + numHabitantes + "\" size=\"4\" maxlength=\"4\" value=\"\"/></label></p>";
    //cadena +="   </fieldset>";
    fieldset.innerHTML = cadena;

    var listaHabitantes = document.getElementById("listaHabitantes");
    listaHabitantes.appendChild(fieldset);

    numHabitantes++;

    document.getElementById("numHabitantes").value = numHabitantes;

}

function marcaCelda(posCelda){

    // SOLO PERMITIMOS MARCAR SI ESTA LA OPCION DE FORMA IRREGULAR
    var casaIregular = document.getElementById("forma_iregular");
    if(casaIregular.checked == false){
        casaIregular.focus();
        alert("Tienes que marcar la forma de plano irregular");
        return false;
    }

    var sectoresAusentes = document.getElementById("sectoresAusentes").value;

    // SI NO ESTABA MARCADA
    if(celdasPlano[posCelda] == ""){
        document.getElementById("celda_" + posCelda).className = "activo";
        celdasPlano[posCelda] = "activo";
        sectoresAusentes += "," + posCelda;
    }
    else{
        document.getElementById("celda_" + posCelda).className = "";
        celdasPlano[posCelda] = "";
        // QUITAMOS SI HAY 5, (SI HAY MAS DE UN NUMERO)
        sectoresAusentes = sectoresAusentes.replace(posCelda + ",", "");
        // QUITAMOS SI HAY 5 (SI SOLO HAY UNO)
        sectoresAusentes = sectoresAusentes.replace(posCelda, "");
    }

    document.getElementById("sectoresAusentes").value = sectoresAusentes;

}
                                
function validaMingGua(){

    var dia = document.getElementById("dia");
    var mes = document.getElementById("mes");    
    var ano = document.getElementById("ano");    
    var hombre = document.getElementById("hombre");
    var mujer = document.getElementById("mujer");

    if(esNumerico(dia.value)==false){alert("El día debe ser un número"); dia.focus(); return false;}
    if(esNumerico(mes.value)==false){alert("El mes debe ser un número"); mes.focus(); return false;}
    if(esNumerico(ano.value)==false){alert("El año debe ser un número"); ano.focus(); return false;}

    if(hombre.checked==false && mujer.checked==false){alert("Hay que indicar el genero"); hombre.focus(); return false;}

    return true;

}
                                
function compruebaCursoGratis(){
    
    var cursoGratis = document.getElementById("curso_2");
    
    // SI ES UN CURSO GRATIS DESHABILITAMOS LAS CASILLAS DE PAGO CON TARJETA/TRANSFERENCIA
    if(cursoGratis.checked == true){
        document.getElementById("cajaFormaPago").style.display = "none";
    }
	else{
		document.getElementById("cajaFormaPago").style.display = "block";
	}
    
}                                
                                
