
function nomesCaractersValids(cadena)
{
	valids="0123456789abcdefghijklmnñopqrstuvwxyzABCDEFGHIJKLMNÑOPQRSTUVWXYZ .@_"
	for (i=0;i<cadena.length;i++)
	{
		temp=cadena.substring(i,i+1)
		if (valids.indexOf(temp)==-1)
		{
			return false;
      }
   }
	return true;
}


function validaPle(cadena)
{
	if (cadena.length <0) return false;
	
	for ( i = 0; i < cadena.length; i++ )   
   	if ( cadena.charAt(i) != " " )   
      	return true; 

   return false;
}




function validaCorreu(cadena) 
{
  if ((cadena.indexOf("@")<3)||((cadena.indexOf(".com")<5)&&(cadena.indexOf(".org")<5)
  	  &&(cadena.indexOf(".es")<5)&&(cadena.indexOf(".net")<5)&&(cadena.indexOf(".cat")<5)))
   	return false;
  else
  		return true;
}
 
 
 

//per a la data
function esDigito(sChr)
{
	var sCod;
	sCod = sChr.charCodeAt(0);
	return ((sCod > 47) && (sCod < 58));
}

function valSep(oTxt)
{
	var bOk = ((oTxt.value.charAt(2) == "/") && (oTxt.value.charAt(5) == "/"));
	return bOk;
}

function finMes(oTxt)
{
	var nMes = parseInt(oTxt.substr(3,2), 10);
	var nRes = 0;
	switch (nMes){
		case 1: nRes = 31; break;
		case 2: nRes = 29; break;
		case 3: nRes = 31; break;
		case 4: nRes = 30; break;
		case 5: nRes = 31; break;
		case 6: nRes = 30; break;
		case 7: nRes = 31; break;
		case 8: nRes = 31; break;
		case 9: nRes = 30; break;
		case 10: nRes = 31; break;
		case 11: nRes = 30; break;
		case 12: nRes = 31; break;
	}
	return nRes;
}

function valDia(oTxt)
{
	var bOk = false;
	var nDia = parseInt(oTxt.substr(0,2),10);
	
	bOk = ((nDia >= 1) && (nDia <= finMes(oTxt)));
	
	return bOk;
}

function valMes(oTxt)
{
	var bOk = false;
	var nMes = parseInt(oTxt.substr(3, 2), 10);
	bOk = bOk || ((nMes >= 1) && (nMes <= 12));
	return bOk;
}

function valAno(oTxt)
{
	var bOk = true;
	var nAno = oTxt.substring(6);

	for (var i = 0; i < nAno.length; i++){
		bOk = bOk && esDigito(nAno.charAt(i));
	}
	
	return bOk;
}

function validaData(oTxt)
{
		
	var bOk = true;
	
	if (oTxt.length != 10) return false;
	bOk = bOk && (valAno(oTxt));	
	bOk = bOk && (valDia(oTxt));
	bOk = bOk && (valMes(oTxt));	
	bOk = bOk && (valSep(oTxt));
	return (bOk);
}























///////////////////////////////////////////
//formularis
///////////////////////////////////////////



function verificaFormulariRegistre(form) 
{
	
	//format de correu i data correctes
	if (!validaCorreu(form.correu.value))
	{
		alert("La dirección de correo no es válida");
		return false;
	} 
	
	//que estiguin plen
	cadena ="";

	
	if (!validaPle (form.login.value)) cadena = cadena + " | Login"
	if (!validaPle (form.correu.value)) cadena = cadena + " | Correo"
	if (!validaPle (form.nom.value)) cadena = cadena + " | Nombre"
	//if (!validaPle (form.cognoms.value)) cadena = cadena + " | Apellidos"
	if (!validaPle (form.dataneix.value)) cadena = cadena + " | Fecha Nacimiento"
	//if (!validaPle (form.sexe.value)) cadena = cadena + " | Sexo "
	//if (!validaPle (form.localitat.value)) cadena = cadena + " | Localidad"
	//if (!validaPle (form.pais.value)) cadena = cadena + " | Pais"
	//if (!validaPle (form.estatcivil.value)) cadena = cadena + " | Estado civil"
 	if (cadena != "") 
 	{
 		alert("Por favor, rellene los siguientes campos " + cadena);
 		return false;
 	}

	//que no tinguin caracters raros
	if (!nomesCaractersValids(form.login.value)) cadena = cadena + " | Login"
	if (!nomesCaractersValids(form.correu.value)) cadena = cadena + " | Correu"	
	if (!nomesCaractersValids(form.nom.value)) cadena = cadena + " | Nombre"
	if (!nomesCaractersValids(form.cognoms.value)) cadena = cadena + " | Apellidos"
	if (!nomesCaractersValids(form.localitat.value)) cadena = cadena + " | Localidad"
	if (!nomesCaractersValids(form.pais.value)) cadena = cadena + " | Pais"
	if (cadena != "") 
 	{
 		alert("Los siguientes campos contienen caracteres no válidos " + cadena);
 		return false;
 	}
 
	if (!validaData(form.dataneix.value)) 
	{
		alert ("El formato o valor de la fecha no es correcto, debe ser dd/mm/aaaa ");
		return false;
	}
 	z
 	return true;
 	
}










function verificaFormulariLogin(form)
{ 
	 //que estiguin plen
    var cadena = "";
   
   if (!validaPle ( form.getElementById ("login").value)) cadena = cadena + " | Login"
   if (!validaPle (form.getElementById("pass").value)) cadena = cadena + " | Password"
 
    //que no tinguin caracters raros
    if (!nomesCaractersValids(form.getElementById("login").value)) cadena = cadena + " | Login"
    if (!nomesCaractersValids( form.getElementById("pass").value)) cadena = cadena + " | Password"
    if (cadena != "")
     {
         alert("Los siguientes campos contienen caracteres no válidos " + cadena);
         return;
     }
    
     form.submit();   
}






/*function verificaFormulariLogin(form) 
{
	
 
	//que estiguin plen
	cadena ="";

	
	if (!validaPle (form.login.value)) cadena = cadena + " | Login"
   if (!validaPle (form.pass.value)) cadena = cadena + " | Password"
 
	//que no tinguin caracters raros
	if (!nomesCaractersValids(form.login.value)) cadena = cadena + " | Login"
	if (!nomesCaractersValids(form.pass.value)) cadena = cadena + " | Password"
	if (cadena != "") 
 	{
 		alert("Los siguientes campos contienen caracteres no válidos " + cadena);
 		return false;
 	}
 	
 	return true;
 	
}*/






function verificaFormulariMsg(form) 
{
	//si no està plé retorna false i no fa res
	if (!validaPle (form.missatge.value)) 
   	return false;
 	else
 		return true;
}


function verificaFormulariNota(form) 
{
	//si no està plé retorna false i no fa res
	if ((form.getElementById ("nota") >= 0) || (form.getElementById ("nota") <= 10)) 
   	return true;
 	else
 		return false;
}


function verificaFormulariOpi(form) 
{
	//si no està plé retorna false i no fa res
	if (
		(
   		validaPle(form.opinio.value)
   	) 
   &&
   	(
   		validaPle(form.titol.value)
   	)
   	) 
		return true;
 	else
 		return false;
}