//	TELEFONO : validarTelefono(HTMLElement) usa quitaEspacios(cadena) y telCorrecto(cadena)  
function quitaEspacios(cadena) {
//	Función que recibe una cadena y devuelve la misma cadena eliminando TODOS los espacios blancos
	var res='';
	for ( var i=0; i<cadena.length;	i++ ) {
		if ( cadena.charAt(i) != ' ' ) res += cadena.charAt(i);
	}
	return res;
}
function validarTelefono(tel) {
//	Parámetro de entrada: HTMLElement
//	Salida: TRUE si tiene formato de teléfono correcto, FALSE si no.
	if ( tel.value == '' ) return false;
	var numTel = quitaEspacios(tel.value);	//	Trabajo sobre la cadena limpia de espacios
	if ( numTel.length < 9 || isNaN(numTel) ) {	//	Verifica que es una cifra de al menos 9 dígitos
		alert("Teléfono incorrecto.");
		tel.focus;
		return false;
	}
	return true;
}

// 	CLAVE : validarClave(HTMLElement)
function validarClave(clave) {
//	Verifica que la clave tiene al menos 6 caracteres
	if ( clave.value == '' ) return false;	//	Con este if evito mostrar alertas si el campo está vacío
	if ( clave.value.length < 6 ) {
		alert("La clave es demasiado corta.");
		clave.focus();
		return false;
	}
	return true;
}

//	MAIL : validarMail(HTMLElement) usa mailCorrecto(HTMLelement) usa verificapuntos(cadena)
function verificaPuntos(cadena) {
//	Función que devuelve FALSE si en la cadena hay dos puntos seguidos (..) o si empieza o acaba por punto
	var lon = cadena.length;
	if ( cadena.indexOf('.')==0 || cadena.lastIndexOf('.')==(lon-1) ) return false;
	var pos = cadena.indexOf('.');				//	Empezando por el primer punto en la cadena
	for ( var i = pos+1; i<lon; i++ ) {			//	recorro la cadena
	  if ( cadena.charAt(i) == '.' ) {			//	y si encuentro otro punto:
	  	if ( i - pos == 1 ) return false;		//	si está al lado del anterior, FALSE
		else pos = i;							//	si no, sigo recorriendo la cadena contando desde ese punto
	  }
	}
	return true;
}
function mailCorrecto(mail){
//	Parámetro de entrada: HTMLElement
//	Salida: TRUE si el correo es correcto, FALSE si no.
	if ( mail.value.indexOf('@')<1 ) return false;								//	Si no tiene la primera parte
	if ( mail.value.indexOf(' ') != -1 ) return false;							//	especificaciones RFC
	var email = mail.value.split('@'); 											//	email[0] = dirección, email [1] = dominio;
	if ( email[0].length > 64 || email[1].length > 254 ) return false;			//	especificaciones RFC
  	if ( email[1].indexOf('@') != -1 ) return false;							//	el correo sólo puede tener un signo @
	if ( email[1].indexOf('.') == -1 ) return false;							//	el dominio debe tener al menos un punto
	if ( !verificaPuntos(email[0]) || !verificaPuntos(email[1]) ) return false;	//	ver función verificaPuntos
	return true;
}
function validarMail(mail){
	if ( mail.value == "" ) return false;
	if ( !mailCorrecto(mail) ) {
		alert("E-Mail incorrecto");
		mail.focus();
		return false;
	}
	return true;
}

