// JavaScript Document
//Función auxiliar para comprobar e-mail
function checkMail(email) <!-- Chequea el Email comprobando que contenga al menos una arroba no antes de algún punto y que contenga al menos un punto antes del último carácter -->
	{
		var res=false;    <!-- Variable de salida -->
		var posat;        <!-- Posición de la arroba -->
		var dominio;      <!-- Variable que contiene la subcadena que corresponde al dominio del mail -->
		if (email.match("@"))
		{
			posat=email.indexOf("@", 0);
			if (posat>0 && posat<email.length-1)
				dominio=email.substring(posat+1, email.length-1); 
			if (dominio.match(".") && !dominio.match("@"))
			{
				var pospoint=dominio.indexOf(".", 0); <!-- Variable que indica la posición del punto en el dominio -->
				if (pospoint>0 && pospoint<dominio.length-1)
					res=true;
			}
		}
		return res;
	}
//Función para el envio del formulario del contacto.
//comprobamos que todos los datos del formulario esten insertados
function comprobar()
{
	//adquirimos las variables del formulario
	var nombre=document.getElementById("nombre").value;
	var apellidos=document.getElementById("apellidos").value;
	var telefono=document.getElementById("telefono").value;
	var mail=document.getElementById("mail").value;
	var comentario=document.getElementById("comentario").value;
	
	var error=false;//esta variable nos comenta si ha habido algun error
	var aError= new Array ();//Array en el q se insertan una descripción de los errores del formulario
	
	if (nombre=="" || nombre.length<3)
	{
		error=true;
		aError.push("El nombre no puede ser vacío ni contener menos de tres caracteres.");
	}
	
	if (apellidos=="" || nombre.length<3)
	{
		error=true;
		aError.push("El apellido no puede ser vacío ni contener menos de tres caracteres.");
	}
	
	//el numero de telefono debe admitir que se ponga con el prefijo del pais del remitente
	//con lo que debe de poder ser de la forma 34954xxxxxx o 954xxxxxx
	if (telefono.length!=9 && telefono.length!=11)
	{
		error=true;
		aError.push("El número de teléfono no es válido.");
	}
	
	if(!checkMail(mail))
	{
		error=true;
		aError.push("El email no es una dirección de correo válida.");
	}
	
	if (comentario=="")
	{
		error=true;
		aError.push("El comentario no puede esta vacío.");
	}
	
	//Si ha habido errores, en el siguiente condicional se escribirán en un mensaje de alerta
	
	if (error)
	{
		var msj="Se han detectado varios errores:\n\n";
		var i;
		for (i=0;i<aError.length;i++)//recorremos el array aError para ir poniendo en la cadena los errores
			msj=msj+(i+1)+".- "+aError[i]+"\n";
			
		window.alert(msj);//imprimimos el mensaje de alerta
	}
	else
		document.getElementById("contacto").submit();//si no ha habido errores enviamos el formulario

	
}
