function justnumber(forma,cadena)
{
	//*************************************************
	// Sólo permite la entrada de datos numéricos.
	// Recibe el nombre de la forma(forma) y el nombre
	// del textbox(cadena).
	//*************************************************
	var contents;
	contents=document[forma][cadena].value;
	if(contents!=0)
		{if (((contents / contents) != 1)) 
			{alert('Introduzca sólo números en este campo.');
			 document[forma][cadena].focus();
			 document[forma][cadena].select(); 	 
			 return(false);}
		else
		{return(true);}
		}
	else
		{return(true);}
}


function prevalida(tipo)
{
	//*******************************************************************
	// Despliega un mensaje al usuario para preguntar si desea eliminar.
	//*******************************************************************
	if (confirm('¿Está seguro que desea eliminar ' + tipo + '?'))
		{
		return(true)
		}
	else
		{return(false)}
}


function creafecha(tipo,idioma)
{
	//*************************************************
	//
	//	Crea los combos para la fecha, del tipo
	//	día, mes(en letras) y años.
	//
	//*************************************************

	var meses,i,dia,ano,browser;
	//tipo se refiere a si es mes, día, año
	if (idioma='ingles')
		{dia='Day'
		 ano = 'Year';			
		 meses = new Array(13);
		 meses[1] = 'Month';
		 meses[2] = 'January';
		 meses[3] = 'February';
		 meses[4] = 'March';
		 meses[5] = 'April';
		 meses[6] = 'May';
		 meses[7] = 'June';
		 meses[8] = 'July';
		 meses[9] = 'August';
		 meses[10] = 'September';
		 meses[11] = 'October';
		 meses[12] = 'November';
		 meses[13] = 'December';}
	else
		{dia = 'Dia';
		 ano = 'Año';
		 meses = new Array(13);
		 meses[1] = 'Mes';
		 meses[2] = 'Enero';
		 meses[3] = 'Febrero';
		 meses[4] = 'Marzo';
		 meses[5] = 'Abril';
		 meses[6] = 'Mayo';
		 meses[7] = 'Junio';
		 meses[8] = 'Julio';
		 meses[9] = 'Agosto';
		 meses[10] = 'Septiembre';
		 meses[11] = 'Octubre';
		 meses[12] = 'Noviembre';
		 meses[13] = 'Diciembre';}
	switch (tipo)
	{
		case 'mes':
			document.write ('<option value='+meses[1]+' selected>'+meses[1])
			for (i=2;i<=meses.length-1;i++)
			{
				document.write ('<option value='+meses[i]+'>'+meses[i]);
			}
		break;
		case 'dia':
			document.write ('<option value='+dia+' selected>'+dia)
			for (i=1;i<=31;i++)
			{
				document.write ('<option value='+i+'>'+i);
			}
		break;
		case 'ano':
			document.write ('<option value='+ano+' selected>'+ano)
			ano = new Date();
			ano = ano.getYear();
			browser=navigator.appName;
			if(browser.indexOf('Netscape')!=-1)
				{ano=parseInt(ano,10)+1900;
				document.write ('<option value='+ano+'>'+ano);}
			else
				{document.write ('<option value='+ano+'>'+ano);}
		break;
	}
}


function validafecha(forma,mes,dia,ano,idioma)
{	
	//*************************************************
	//
	//	Valida que las fechas elegidas sean correctas.
	//
	//*************************************************

	var auxano,i,auxmes,auxdia,auxano,auxmeses;

	// Recojo los datos de las variables del día, mes y año
	auxmes=document[forma][mes].value;
	auxdia=document[forma][dia].value;
	i=document[forma][mes].selectedIndex;
	auxano=document[forma][ano].value;
	
	// Creo el array con los días por mes. El índice indica el mes.
	auxmeses=new Array(12);
	auxmeses[1]=31;
	auxmeses[2]=28;
	auxmeses[3]=31;
	auxmeses[4]=30;
	auxmeses[5]=31;
	auxmeses[6]=30;
	auxmeses[7]=31;
	auxmeses[8]=31;
	auxmeses[9]=30;
	auxmeses[10]=31;
	auxmeses[11]=30;
	auxmeses[12]=31;
	
	//  Selecciono el mensaje según el idioma.
	if(idioma='ingles')
		mensaje="Please input a valid date";
	else
		mensaje="Por favor introduzca una fecha válida";
		
	//valido para el año elegido mayor o igual a 2000
	if(auxano>=2000)
	{	while(auxano>2000)
		{	
			auxano=auxano-4;
		}
		if(auxano==2000)
		{	auxmeses[2]=29;
			if(auxdia<=auxmeses[i])
				return(true);
			else
				alert(mensaje);
				return(false);
		}
		else
		{	auxmeses[2]=28;
			if(auxdia<=auxmeses[i])
				return(true);
			else
				alert(mensaje);
				return(false);
		}
	}
	//  Valido para el año elegido menor a 2000.
	if(auxano<2000)
	{	while(auxano<2000)
		{	
			auxano=auxano+4;
		}
		if(auxano==2000)
		{	auxmeses[2]=29;
			if(auxdia<=auxmeses[i])
				return(true);
			else
				alert(mensaje);
				return(false);
		}
		else
		{	auxmeses[2]=28;
			if(auxdia<=auxmeses[i])
				return(true);
			else
				alert(mensaje);
				return(false);
		}
	}
}



function validalogpass(forma,cadena,tipo)
{
	//******************************************************
	// Permite validar que el login o el password no tengan 
	// menos de 6 caracteres.
	// Se le pasa el nombre de la forma(forma) y el nombre
	// del textbox(cadena).
	//*******************************************************

	var ecadena;
		ecadena=document[forma][cadena].value;
		if (ecadena.length >= 6)
		{	return (true); }
		else
		{	alert(tipo+" no puede tener menos de 6 caracteres.");
			document[forma][cadena].focus();
			document[forma][cadena].select();			
			return(false);
		}
}


function validapass(forma,campopass,camporepass)
{
	//**************************************************
	//
	// Valida el password cuando es ejecutado el submit.
	//
	//**************************************************

   var password,password2;
   password = document[forma][campopass].value;
   password2 = document[forma][camporepass].value;
   if(password!='' && password2!='')
   {
	   if (password.length < 6 || password2.length < 6) 
	   {	alert("La contraseña no puede ser menor a 6 caracteres.");
			document[forma][camporepass].focus();   
			document[forma][camporepass].select();
			return (false);
	   }
	   else 
	   {
		if (password==password2)
		{return (true);}
		else
		{	alert("Las Contraseñas no coinciden.");
			document[forma][camporepass].value='';
			document[forma][campopass].value='';   		   
			document[forma][campopass].focus();
			return (false);
		}
	   }
	}
}


function Empty(field) 
{
	//************************************
	//
	// Verifica si un campo está vacío.
	//
	//************************************

	var ecampo;
		ecadena=field.value;
		ecampo= 0;
		if (ecadena.length == 0) 
			return true;
		else
		{
			for (j=0; j<ecadena.length-1; j++) 
			{
			ecampo = ecadena.charAt(j);
			if (ecampo != '')
				{ 
				return false;
				 }
			}
		}
}


function EnviaForma(forma, estado, mensaje) 
{
	//***********************************************
	//
	// Realiza el submit de la forma. 
	// Como parámetro se le pasa la forma, la acción 
	// y el tipo de mensaje a desplegar.
	//
	//***********************************************

	var valor;
	switch(mensaje)
		{
		case 1:
			msj = '¿Está seguro que desea ingresar el registro?';
			break;
		case 2:
			msj = '¿Está seguro que desea modificar el registro?';
			break;
		case 3:
			msj = '¿Está seguro que desea eliminar el registro?';
			break;
		}

	if (mensaje > 0)
		{
		if (confirm(msj))
			{
			valor = forma.action.indexOf('?');
			if (valor >= 0)
				{
				forma.action=forma.action + '&acc=' + estado;
				forma.submit();
				}
			else
				{
				forma.action=forma.action + '?acc=' + estado;
				forma.submit();
				}
			}
		else
			{
			return(false);
			}
		}
	else
		{
			valor = forma.action.indexOf('?');
			if (valor >= 0)
				{
				forma.action=forma.action + '&acc=' + estado;
				forma.submit();
				}
			else
				{
				forma.action=forma.action + '?acc=' + estado;
				forma.submit();
				}
		}
}


function validar(forma, estado)
{
	//*******************************************************
	// Permite validar que no estén vacíos los campos.
	// Como parámetro se pasan la forma y el estado,
	// si es 'ing' entoces valida para ingresar o modificar,
	// sino valida para eliminar.
	//*******************************************************


	var cadena, nombre, longitud, num, genera, valor,campo;
	if (estado=='ing')
	{
		num=0;
		for (i=0;i<=forma.length-1;i++)
			{
			cadena = forma.elements[i].name.substring(0,2);			
			if (cadena=='r_')
			{

				switch(forma.elements[i].type)
				{
				case 'text':
						if(Empty(forma.elements[i]))
							{
							longitud = forma.elements[i].name.length;
							nombre = 'img_' + forma.elements[i].name.substring(2,longitud);
							genera = new Image(10,10);forma [nombre].src='../images/check.gif';
							num++;
							}
						else
							{
							longitud = forma.elements[i].name.length;
							nombre = 'img_' + forma.elements[i].name.substring(2,longitud);
							genera = new Image(10,10);forma [nombre].src='../images/empty.gif';
							}
				break;
				case 'file':
						if(Empty(forma.elements[i]))
							{
							longitud = forma.elements[i].name.length;
							nombre = 'img_' + forma.elements[i].name.substring(2,longitud);
							genera = new Image(10,10);forma [nombre].src='../images/check.gif';
							num++;
							}
						else
							{
							longitud = forma.elements[i].name.length;
							nombre = 'img_' + forma.elements[i].name.substring(2,longitud);
							genera = new Image(10,10);forma [nombre].src='../images/empty.gif';
							}
				break;
				case 'password':
						if(Empty(forma.elements[i]))
							{
							longitud = forma.elements[i].name.length;
							nombre = 'img_' + forma.elements[i].name.substring(2,longitud);
							genera = new Image(10,10);forma [nombre].src='../images/check.gif';
							num++;
							}
						else
							{
							longitud = forma.elements[i].name.length;
							nombre = 'img_' + forma.elements[i].name.substring(2,longitud);
							genera = new Image(10,10);forma [nombre].src='../images/empty.gif';
							}
				break;
				case 'textarea':
						if(Empty(forma.elements[i]))
							{
							longitud = forma.elements[i].name.length;
							nombre = 'img_' + forma.elements[i].name.substring(2,longitud);
							genera = new Image(10,10);forma [nombre].src='../images/check.gif';
							num++;
							}
						else
							{
							longitud = forma.elements[i].name.length;
							nombre = 'img_' + forma.elements[i].name.substring(2,longitud);
							genera = new Image(10,10);forma [nombre].src='../images/empty.gif';
							}
				break;
				case 'select-one':
						if(forma.elements[i].selectedIndex==0)
							{
							longitud = forma.elements[i].name.length;
							nombre = 'img_' + forma.elements[i].name.substring(2,longitud);

							genera = new Image(10,10);
							forma[nombre].src='../images/check.gif';
							num++;

							}

						else
							{
							longitud = forma.elements[i].name.length;
							nombre = 'img_' + forma.elements[i].name.substring(2,longitud);
							genera = new Image(10,10);forma [nombre].src='../images/empty.gif';
							}
				break;
				case 'radio':
						if(Empty(forma.elements[i]))
							{
							longitud = forma.elements[i].name.length;
							nombre = 'img_' + forma.elements[i].name.substring(2,longitud);
							genera = new Image(10,10);forma [nombre].src='../images/check.gif';
							num++;
							}
						else
							{
							longitud = forma.elements[i].name.length;
							nombre = 'img_' + forma.elements[i].name.substring(2,longitud);
							genera = new Image(10,10);forma [nombre].src='../images/empty.gif';
							}
				break;
				}
			}
		}
		if (num > 0)
			{
			return (false);
			}
		else
			{
			return (true);
			}
	}
	else
		{
		return (true);
		}
} 


function validaemail(forma,cadena)
{
	//*********************************************
	// Permite validar el email. Se le pasa 
	// el nombre de la forma(forma) y el nombre
	// del textbox(cadena).
	//*********************************************

	var ecadena,bad_character;
		ecadena=document[forma][cadena].value;
		if (ecadena!='')
		{
			// El valor del campo cadena es distinto de vacío.
			bad_character = new Array(26);
			bad_character[1]="\\";
			bad_character[2]="/";
			bad_character[3]="'";
			bad_character[4]="!";
			bad_character[5]="?";
			bad_character[6]="à";
			bad_character[7]="á";
			bad_character[8]="ä";
			bad_character[9]="è";
			bad_character[10]="é";
			bad_character[11]="ë";
			bad_character[12]="ì";
			bad_character[13]="í";
			bad_character[14]="ï";
			bad_character[15]="ñ";
			bad_character[16]="ò";
			bad_character[17]="ó";
			bad_character[18]="ö";
			bad_character[19]="ù";
			bad_character[20]="ú";
			bad_character[21]="ü";
			bad_character[22]="ý";
			bad_character[23]="ÿ";
			bad_character[24]="¡";
			bad_character[25]="¿";
			bad_character[26]=" ";


			if ((ecadena.indexOf("@") == -1) || (ecadena.indexOf(".") == -1))
			{	
				alert("Insert a valid e-mail");
				document[forma][cadena].focus();
			 	document[forma][cadena].select(); 	 
				return(false);
			}
			else 
			{
				for (i=1;i<=bad_character.length-1;i++)
				{
					if (ecadena.indexOf(bad_character[i]) != -1)
					{
						alert("Insert a valid e-mail");
						document[forma][cadena].focus();
			 			document[forma][cadena].select(); 	 
						return(false);
						break;
					}
				}
			}
		}
		else
		{
			// El valor del campo cadena es vacío.
			return true;
		}
}




