function enviarConsulta(departamentoOtros) {
    if (isFieldBlank(document.formularioPpal.nombre)){
        mostrarError(ME_CONTACTO_NOMBRE_VACIO);
        document.formularioPpal.nombre.focus();
        return;
    } else if (isFieldBlank(document.formularioPpal.empresa)){
        mostrarError(ME_CONTACTO_EMPRESA_VACIO);
        document.formularioPpal.empresa.focus();
        return;
    } else if (isFieldBlank(document.formularioPpal.email)){
        mostrarError(ME_CONTACTO_EMAIL_VACIO);
        document.formularioPpal.email.focus();
        return;
    } else if (!emailCorrecto(document.formularioPpal.email)){
        mostrarError(ME_CONTACTO_EMAIL_INCORRECTO);
        document.formularioPpal.email.focus();
        return;
    } else if (isFieldBlank(document.formularioPpal.telefono)){
        mostrarError(ME_CONTACTO_TELEFONO_VACIO);
        document.formularioPpal.telefono.focus();
        return;
    } else if (document.formularioPpal.departamento.selectedIndex == 0){
        mostrarError(ME_CONTACTO_DEPARTAMENTO_VACIO);
        document.formularioPpal.departamento.focus();
        return;
    } else if (document.formularioPpal.departamento.value != departamentoOtros && document.formularioPpal.asunto.selectedIndex == 0){
        mostrarError(ME_CONTACTO_ASUNTO_VACIO);
        document.formularioPpal.asunto.focus();
        return;
    } else if (document.formularioPpal.departamento.value == departamentoOtros && isFieldBlank(document.formularioPpal.asuntoLibre)){
        mostrarError(ME_CONTACTO_ASUNTO_VACIO);
        document.formularioPpal.asuntoLibre.focus();
        return;
    } else if (isFieldBlank(document.formularioPpal.consulta)){
        mostrarError(ME_CONTACTO_CONSULTA_VACIO);
        document.formularioPpal.consulta.focus();
        return;
    }

    // Llegado a esta este punto ya se puede hacer el submit
    document.formularioPpal.submit();
}

function enviarConsultaPublicaciones() {
    if (isFieldBlank(document.formularioPpal.nombre)){
        mostrarError(ME_CONTACTO_NOMBRE_VACIO);
        document.formularioPpal.nombre.focus();
        return;
    } else if (isFieldBlank(document.formularioPpal.empresa)){
        mostrarError(ME_CONTACTO_EMPRESA_VACIO);
        document.formularioPpal.empresa.focus();
        return;
    } else if (isFieldBlank(document.formularioPpal.email)){
        mostrarError(ME_CONTACTO_EMAIL_VACIO);
        document.formularioPpal.email.focus();
        return;
    } else if (!emailCorrecto(document.formularioPpal.email)){
        mostrarError(ME_CONTACTO_EMAIL_INCORRECTO);
        document.formularioPpal.email.focus();
        return;
    } else if (!document.getElementById("tipoOperacionAlta").checked &&
               !document.getElementById("tipoOperacionBaja").checked){
        mostrarError(ME_CONTACTO_TIPO_OPERACION_VACIO);        
        return;
    }

    // Llegado a esta este punto ya se puede hacer el submit    
    document.formularioPpal.submit();
}

function dameObjetoAJAX() {
  try {    // Firefox, Opera 8.0+, Safari
      return new XMLHttpRequest();
  } catch (e) {    // Internet Explorer
      try {
          return new ActiveXObject("Msxml2.XMLHTTP");
      } catch (e) {
          try {
              return new ActiveXObject("Microsoft.XMLHTTP");
          } catch (e) {
              alert("Tu navegador no soporta AJAX, actualizalo por favor!");
              return null;
          }
      }
  }
}

function vaciarSelect(select) {
    while (select.options.length>0) {
        select.remove(0);
    }
    // Aņadimos el texto para "Selecciona"
    select.options.add(new Option(TXT_CONTACTO_SELECCIONE_ASUNTO,"-1"),select.length);
}

function cambioDepartamento(url, language, departamentoOtros) {
    if(document.formularioPpal.departamento.selectedIndex == 0){
        var selectAsuntos = document.getElementById("asunto");
        //Vaciamos el listado de asuntos
        vaciarSelect(selectAsuntos);
        selectAsuntos.disabled = true;
        return;
    }
    // Si se ha seleccionado el departamento "Otros", se habilita el campo de texto
    if(document.formularioPpal.departamento.value == departamentoOtros){
        document.getElementById("divAsuntoLibre").style.display = "";
        document.getElementById("divAsunto").style.display = "none";
        return;
    } else {
        document.getElementById("divAsuntoLibre").style.display = "none";
        document.getElementById("divAsunto").style.display = "";    
    }

    var xmlHttp = dameObjetoAJAX();
    xmlHttp.open("GET",url+"/contacto.jsp?accion=dameAsuntosDeDepartamentoAjax&codigoDepartamento="+document.formularioPpal.departamento.value,true);
    xmlHttp.onreadystatechange=function() {
        if(xmlHttp.readyState==4) {
            //Obtenemos el objeto JSON y lo parseamos:
            if (xmlHttp.responseText.indexOf("ERROR")==-1) {
                var listaAsuntos = eval('(' + xmlHttp.responseText + ')');

                //Mostramos el listado de Asuntos.
                var selectAsuntos = document.getElementById("asunto");

                //Vaciamos el listado de asuntos
                vaciarSelect(selectAsuntos);
                for (var i=0;i<listaAsuntos.length;i++) {
                    if (language == "es") {
                        selectAsuntos.options.add(new Option(listaAsuntos[i].texto,listaAsuntos[i].id),selectAsuntos.length);
                    } else {
                        selectAsuntos.options.add(new Option(listaAsuntos[i].textoIngles,listaAsuntos[i].id),selectAsuntos.length);
                    }
                }               
                // Se habilita el select
                selectAsuntos.disabled = false;
            }
        }
    }
    xmlHttp.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
    xmlHttp.send(null);
}

function limpiarFormulario() {
    document.formularioPpal.nombre.value = "";    
    document.formularioPpal.empresa.value = "";
    document.formularioPpal.email.value = "";
    document.formularioPpal.telefono.value = "";
    document.formularioPpal.consulta.value = "";
    document.formularioPpal.departamento.selectedIndex = 0;
    var selectAsuntos = document.getElementById("asunto");
    vaciarSelect(selectAsuntos);
    selectAsuntos.disabled = true;
    document.getElementById("divAsuntoLibre").style.display = "none";
    document.getElementById("divAsunto").style.display = "";
}

function mostrarError(texto) {
    var ventanaError = document.getElementById("ventanaError");
    var textoError = document.getElementById("textoError");

    textoError.innerHTML = texto;
    ventanaError.style.display = "block";
}

function ocultarError() {
    var ventanaError = document.getElementById("ventanaError");
    ventanaError.style.display = "none";
}

function cambiaCheck(){
    var ckeck = document.getElementById("aceptacionTerminos");
    var botonSubmit = document.getElementById("botonSubmit");    
    botonSubmit.disabled = (!ckeck.checked);
}

function limpiarFormularioPublicaciones() {
    document.formularioPpal.nombre.value = "";
    document.formularioPpal.empresa.value = "";
    document.formularioPpal.email.value = "";
    document.formularioPpal.tipoOperacion.selectedIndex = 0;    
}
