function Limpiar( obj )//Recibe el objeto al que debe pasar el foco. { obj.focus(); } function ValidarFormulario() { if (document.formContrato.nombreAgenciaCliente.value == '') { alert("Es obligatorio rellenar el campo Nombre Agencia."); document.formContrato.nombreAgenciaCliente.focus(); return false; } if (document.formContrato.email.value == '') { alert("Es obligatorio rellenar el campo E-mail."); document.formContrato.email.focus(); return false; } if (document.formContrato.telefono.value == '') { alert("Es obligatorio rellenar el campo teléfono."); document.formContrato.telefono.focus(); return false; } if (document.formContrato.provincia.value == '' || document.formContrato.provincia.value == '0000') { alert("Es obligatorio rellenar el tipo Provincia."); document.formContrato.provincia.focus(); return false; } if (document.formContrato.personaContacto.value == '') { alert("Es obligatorio rellenar el campo Persona de Contacto."); document.formContrato.personaContacto.focus(); return false; } if (!validaTelefono(document.formContrato.telefono)) { alert("Introduce un valor válido para el Teléfono. ") document.formContrato.telefono.focus(); return false; } if (!emailCheck(document.formContrato.email.value)) { document.formContrato.email.focus(); return false; } return true; } function validaTelefono(telefono) { if(telefono.value.length !== 9) { return(false); } if(isNaN(telefono.value)) { return(false); } var caracter = telefono.value.charAt(0) if(caracter !== '9' && caracter !== '6' && caracter !== '8') { return(false); } return(true); } function emailCheck (emailStr) { /* Verificar si el email tiene el formato user@dominio. */ var emailPat=/^(.+)@(.+)$/ /* Verificar la existencia de caracteres. ( ) < > @ , ; : \ " . [ ] */ var specialChars="\\(\\)<>@,;:\\\\\\\"\\.\\[\\]" /* Verifica los caracteres que son válidos en una dirección de email */ var validChars="\[^\\s" + specialChars + "\]" var quotedUser="(\"[^\"]*\")" /* Verifica si la dirección de email está representada con una dirección IP Válida */ var ipDomainPat=/^\[(\d{1,3})\.(\d{1,3})\.(\d{1,3})\.(\d{1,3})\]$/ /* Verificar caracteres inválidos */ var atom=validChars + '+' var word="(" + atom + "|" + quotedUser + ")" var userPat=new RegExp("^" + word + "(\\." + word + ")*$") /*domain, as opposed to ipDomainPat, shown above. */ var domainPat=new RegExp("^" + atom + "(\\." + atom +")*$") var matchArray=emailStr.match(emailPat) if (matchArray==null) { alert("La dirección de email parece incorrecta (revise @ y .'s)") return false } var user=matchArray[1] var domain=matchArray[2] // Si el user "user" es valido if (user.match(userPat)==null) { // Si no alert("El nombre de usuario no es válido.") return false } /* Si la dirección IP es válida */ var IPArray=domain.match(ipDomainPat) if (IPArray!=null) { for (var i=1;i<=4;i++) { if (IPArray[i]>255) { alert("IP de destino inválida") return false } } return true } var domainArray=domain.match(domainPat) if (domainArray==null) { alert("El dominio parece no ser válido.") return false } var atomPat=new RegExp(atom,"g") var domArr=domain.match(atomPat) var len=domArr.length if (domArr[domArr.length-1].length<2 || domArr[domArr.length-1].length>4) { alert("La dicrección debe tener 3 letras si es .com o 2 si en de algún pais.") return false } if (len<2) { var errStr="La dirección es erronea" alert(errStr) return false } // La dirección de email ingresada es Válida return true; }