<!--
function CheckEmpty(strchk,strname)
{
	if (strchk == "")
	{	
		alert("Favor introduzir um valor no campo '" + strname + "'.");
		return (false);
	}
	else
	{
		return (true);
	}
}


function CheckSize(strvalue,strname,strminsize,strmaxsize)
{
	checkStr = strvalue ;
	if (checkStr.length < strminsize)
	{
		alert("Necessita de preencher o campo de " + strname + ".");
		return (false);
	}
	else if (checkStr.length > strmaxsize)
	{
		alert("O campo '" + strname + "' excede os " + strmaxsize + " caracteres (tem " + (checkStr.length - strmaxsize) + " a mais) .");
		return (false);
	}
	else
	{
		return (true);
	}
}

function CheckValid(strtochk,strchk,msgstr,strname)
{
	var checkOK = strchk;
	var checkStr = strtochk;
	var allValid = true;
	for (i = 0;  i < checkStr.length;  i++)
	{
		ch = checkStr.charAt(i);
		for (j = 0;  j < checkOK.length;  j++)
			if (ch == checkOK.charAt(j))
				break;
			if (j == checkOK.length)
			{
				alert(msgstr + " no campo " + strname + " .");
				allValid = false;
				break;
			}
	}
	return (allValid) ;
}

function CheckEmail(eaddress)
{
	var reEmail = /^.+\@.+\..+$/ ;
	
	if ((eaddress == null) || (eaddress.length == 0)) {
       	if (CheckEmail.arguments.length == 1) {
			alert("Por favor introduza um endereço de Email válido.");
       		return false ;
       	} else {
       		if (!(CheckEmail.arguments[1] == true)) {
				alert("Por favor introduza um endereço de Email válido.");
				return false;
       		}
       		return (CheckEmail.arguments[1] == true);
       	}
    } else {
		if (!(reEmail.test(eaddress))) {
			alert("Por favor introduza um endereço de Email válido.");
			return false;
		}
       return reEmail.test(eaddress) ;
    }
}
// -->


function Valid_Form(theForm)
{
	XStr    = theForm.email ;
	XMinSize   = 7 ;
	XMaxSize   = 100 ;
	XValid  = " ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789@-_." ;
	XName   = "Email" ;
	XValMsg = "Introduza apenas letras de 'Aa-Zz', '0-9' e '@-_.'" ;
	if (!CheckValid(XStr.value,XValid,XValMsg,XName) || !CheckSize(XStr.value,XName,XMinSize,XMaxSize) || !CheckEmpty(XStr.value,XName))
	{
		XStr.focus();
		return (false);
	}
	if (!CheckEmail(XStr.value) || (XStr.value == '')) {	
		return (false);
	}	
	
	return (true);
}

// -->