/*
Función que da un alert dado un mensaje
Parámetros:
	mens -> Mensaje que se desea dar
*/
function mensaje(mens){
	alert(mens);
}

/*
Función que elimina el caracter pasado a través de la variable car a la izquierda de una cadena
*/
function lTrim(sStr, car){
	if(sStr != "" && sStr != null){
		while (sStr.charAt(0) == car)
		sStr = sStr.substr(1, sStr.length - 1);
	}
	return sStr;
}

/*
Función que elimina el caracter pasado a través de la variable car a la derecha de una cadena
*/	
function rTrim(sStr, car){
	if(sStr != "" && sStr != null){
		while (sStr.charAt(sStr.length - 1) == car)
		sStr = sStr.substr(0, sStr.length - 1);
	}
	return sStr;
}

/*
Función que elimina el caracter pasado a través de la variable car a la izquierda y a la derecha de una cadena
*/
function allTrim(sStr, car){
	return rTrim(lTrim(sStr, car), car);
}
/*
Función para aplicar un maxlegth a un textarea. Se utiliza en el onkeyPress de la siguiente manera
 onkeyPress = 'return maxlength(this.value, event, max) donde max es un número entero'
*/
function maxlength(texto, e, max, mens) {
	if (texto.length > max - 1 ) {
		if (navigator.appName == "Netscape") tecla = e.which
		else tecla = e.keyCode
		if (tecla != 8 && tecla != 0){
			if(mens != ""){
				alert (mens);
			}
			return false;
		}
	}
	return true
}

/*
Función para validar un dirección URL
*/
function validarURL(url) {
	var formato = /^http:\/\/\w+(\.\w+)*\.\w{2,3}$/;
	return formato.test(url);
}

/*
Función que valida si la dirección de correo es válida
*/
function validarEmail(id, mens) {
	var correo = document.getElementById(id).value;
	if (/^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,3})+$/.test(correo)){
		return true;
    } 
    else {
		if (mens != ""){
			alert(mens);
		}
		document.getElementById(id).value = '';
		document.getElementById(id).focus();
		return false;     
	}
}

/*
Función que determina si un año es bisiesto o no
*/
function esBisiesto(ano){
	if ((ano % 4 == 0) && (( ano % 100 != 0) || (ano % 400 == 0)))
		return true;
	else
		return false;
}

/*
Función que valida si una fecha es válida
*/
function validarFecha(dia, mes, ano, hoy) {
	var mens = "";
	if(dia <= 0 || dia > 31){
		//El día es menor a 0 o mayor a 31
		mens = "El día que introdujo no es válido";
	}
	else{
		if(dia >= 30){
			if(mes == 2){
				//El dia es 30 o 31 y el mes es Febrero
				mens = "El día que introdujo no es válido para el mes de Febrero";
			}
			else{
				if (dia > 30 && (mes == 4 || mes == 6 || mes == 9 || mes == 11)){
					//El dia es 31 y el mes es Abril, Junio, Septiembre o Noviembre
					mens = "El día que introdujo no es válido para ese mes";
				}
			}
		}
		else{
			if(mes <= 0 || mes > 12){
				//El mes es 0 o mayor que 12
				mens = "El mes que introdujo no es válido";
			}
			else{
				if(dia == 29 && !esBisiesto(ano)){
					//El día es 29, el mes es Febrero y el año no es bisiesto
					mens = "El año que introdujo no es bisiesto";
				}
			}
		}
	}
	return mens;
}

/*
Función que valida si una fecha es válida y si es mayor que hoy
*/
function validarFechaMayorHoy(dia, mes, ano, fecha, hoy) {
	var mens = "";
	mens = validarFecha(dia, mes, ano, hoy);
	if(mens == ""){
		if(fecha > hoy){
			//La fecha que se introdujo es mayor que la fecha de hoy
			mens = "La fecha que introdujo es mayor que la fecha de hoy";
		}
	}
	
	return mens;
}





