//window.onload=function(){ window.scrollTo(0,460); }

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&aacute;lidos en una direcci&oacute;n de email */
	var validChars = "\[^\\s" + specialChars + "\]";

	var quotedUser = "(\"[^\"]*\")";

	/* Verifica si la direcci&oacute;n de email esta; representada con una direcci&oacute;n IP V&aacute;lida */ 
	var ipDomainPat = /^\[(\d{1,3})\.(\d{1,3})\.(\d{1,3})\.(\d{1,3})\]$/;

	/* Verificar caracteres inv&aacute;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 E-mail debe tener tanto @ como .");
		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 valido.");
		return false;
	}
	
	/* Si la direcci&oacute;n IP es v&aacute;lida */
	var IPArray = domain.match(ipDomainPat);
	
	if (IPArray != null) {
		for (var i=1; i<=4; i++) {
			if (IPArray[i]>255) {
				alert("IP de destino invalida");
				return false;
			}
		}
		return true
	}
	
	var domainArray = domain.match(domainPat);
	
	if (domainArray == null) {
		alert("El dominio parece no ser valido.");
		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>3({
	
	alert("La dicrecci&oacute;n debe tener 3 letras si es ."com" o 2 si en de alg&uacute;n pais.");
	return false
	}*/
	
	if (len < 2) {
		alert("La direccion es erronea");
		return false;
	}
}



function validar()
{
	var formulario = document.getElementById("formContacto");
	var i = 0;
	
	for( i = 0; i < formulario.elements.length; i++)
	{
		if ( formulario.elements[i].value == '' )
		{
			alert("El campo " + formulario.elements[i].name + " es obligatorio!");
			formulario.elements[i].focus();
			return false;
		}
		else if ( formulario.elements[i].name == 'email' && emailCheck(formulario.elements[i].value) == false )
		{
			formulario.elements[i].focus();
			return false;
		}
	}
}
