	function MM_swapImgRestore() { //v3.0
		var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
	}
		
	function MM_preloadImages() { //v3.0
		var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
		var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
		if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
	}
		
	function MM_findObj(n, d) { //v4.01
  		var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    		d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
		if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
		for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
		if(!x && d.getElementById) x=d.getElementById(n); return x;
	}
		
	function MM_swapImage() { //v3.0
		var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
		if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
	}

/******************************************************************************************/

	function validar_data(data)
	{

		if (isNaN(data))
		{
			if (data.length < 10)
			{
				window.alert('A data foi digitada fora do padrão (dd/mm/aaaa) !');
				form1.Idade.focus();				
				return false;
			}
		}
		
		var dia = parseInt(data.substring(0,2),10);
		var mes = parseInt(data.substring(3,5),10);
		var ano = parseInt(data.substring(6,10),10);
		
		if (dia <= 31 && mes <=12 && ano >= 1920 && ano <= 2005)
		{
			if (data.substring(0,1)=='0' && data.substring(1,2) != '0' || data.substring(0,1)!='0')
			{
				if (data.substring(2,3)=="/")
				{
					if (data.substring(3,4)=='0' && data.substring(4,5)!='0' ||	data.substring(3,4)!='0')
					{
						if (data.substring(5,6)=="/")
						{
							if (data.substring(6,7)== '0' || data.substring(6,7)=='' && data.substring(7,8)!='0')
							{
								window.alert('O ano que você digitou não existe!');
								form1.Idade.focus();
								return false;
							}
							if ((mes == 1)||(mes == 3)||(mes == 5)||(mes ==7)||(mes == 8)||(mes == 10)||(mes == 12))
							{
								if ((dia > 0) && (dia <= 31)) 
								{
									return true;
								}
								else
								{
									window.alert('Este dia não existe, certifique-se de que digitou corretamente!');
									form1.Idade.focus();									
									return false;
								}
							}
							if ((mes == 4)||(mes == 6)||(mes == 9)||(mes == 11))
							{
								if ((dia > 0 ) && (dia <= 30))
								{
									return true;
								}
								else
								{
									window.alert('Este dia não existe, certifique-se de que digitou correctamente!');
									form1.Idade.focus();									
									return false;
								}
							}
							if (mes == 2)
							{
								if ((dia > 0 ) && (dia <= 29))
								{
									if (dia == 29)
									{
										if ((ano % 4) == 0)
										{
											return true;
										}
										else
										{
											window.alert('Este dia não existe, certifique-se de que digitou corretamente!');
											form1.Idade.focus();											
											return false; 
										}
									}
									else
									{
										return true;
									}
								}
								else
								{
									window.alert('Este dia não existe, certifique-se de que digitou corretamente!');
									form1.Idade.focus();									
									return false; 
								}
							} 
						}
						else
						{
							window.alert('A data foi digitada fora do padrão (dd/mm/aaaa)!');
							form1.Idade.focus();
							return false;
						}
					}
					else
					{
						window.alert('Você digitou um mês que não existe!');
						form1.Idade.focus();						
						return false;
					}
				}
				else
				{
					window.alert('A data foi digitada fora do padrão (dd/mm/aaaa) !');
					form1.Idade.focus();
					return false;
				}
			}
			else
			{
				window.alert('Você digitou um dia que não existe!');
				form1.Idade.focus();				
				return false;
			}
		}
		else
		{
			window.alert('O dia e/ou o mês que você digitou não existe, ou Você digitou fora do padrão (dd/mm/aaaa)!');
			form1.Idade.focus();
			return false;
		}
	}		
			
/******************************************************************************************/

	function emailKollTo(form)
	{
		if (/^.+@.+\..+$/.test(form.To_email.value))
		return true;
		alert("Verifique o email do destinatário.");
		form.To_email.select();
		return false;
	}

/******************************************************************************************/

	function validar_dataPequenada()
	{

		var data = document.forms[0]['Idade'].value;

		var dia = parseInt(data.substring(0,2),10);
		var mes = parseInt(data.substring(3,5),10);
		var ano = parseInt(data.substring(6,10),10);

		if (isNaN(data))
		{
			if (data.length < 10)
			{
				window.alert('A data foi digitada fora do padrão (dd/mm/aaaa) !');
				document.forms[0]['Idade'].focus();
				return false;
			}
		}

		if (ano < 1999 || ano > 2005)
		{
			window.alert('A data digitada não se engloba nos escalões da prova!');
			document.forms[0]['Idade'].focus();
			return false;
		}

		if (dia <= 31 && mes <=12 && ano >= 1999 && ano <= 2005)
		{			
			if (data.substring(0,1)=='0' && data.substring(1,2) != '0' || data.substring(0,1)!='0')
			{
				if (data.substring(2,3)=="/")
				{
					if (data.substring(3,4)=='0' && data.substring(4,5)!='0' ||	data.substring(3,4)!='0')
					{
						if (data.substring(5,6)=="/")
						{
							if (data.substring(6,7)== '0' || data.substring(6,7)=='' && data.substring(7,8)!='0')
							{
								window.alert('O ano que você digitou não existe!');
								form1.Idade.focus();
								return false;
							}
							if ((mes == 1)||(mes == 3)||(mes == 5)||(mes ==7)||(mes == 8)||(mes == 10)||(mes == 12))
							{
								if ((dia > 0) && (dia <= 31)) 
								{
									return true;
								}
								else
								{
									window.alert('Este dia não existe, certifique-se de que digitou corretamente!');
									form1.Idade.focus();
									return false;
								}
							}
							if ((mes == 4)||(mes == 6)||(mes == 9)||(mes == 11))
							{
								if ((dia > 0 ) && (dia <= 30))
								{
									return true;
								}
								else
								{
									window.alert('Este dia não existe, certifique-se de que digitou correctamente!');
									form1.Idade.focus();
									return false;
								}
							}
							if (mes == 2)
							{
								if ((dia > 0 ) && (dia <= 29))
								{
									if (dia == 29)
									{
										if ((ano % 4) == 0)
										{
											return true;
										}
										else
										{
											window.alert('Este dia não existe, certifique-se de que digitou corretamente!');
											form1.Idade.focus();
											return false; 
										}
									}
									else
									{
										return true;
									}
								}
								else
								{
									window.alert('Este dia não existe, certifique-se de que digitou corretamente!');
									form1.Idade.focus();
									return false; 
								}
							} 
						}
						else
						{
							window.alert('A data foi digitada fora do padrão (dd/mm/aaaa) !');
							form1.Idade.focus();
							return false;
						}
					}
					else
					{
						window.alert('Você digitou um mês que não existe!');
						form1.Idade.focus();
						return false;
					}
				}
				else
				{
					window.alert('A data foi digitada fora do padrão (dd/mm/aaaa) !');
					form1.Idade.focus();
					return false;
				}
			}
			else
			{
				window.alert('Você digitou um dia que não existe!');
				document.forms[0]['Idade'].focus();
				return false;
			}
		}
		else
		{
			window.alert('O data que digitou não existe, ou está fora do padrão (dd/mm/aaaa) !');
			document.forms[0]['Idade'].focus();
			return false;
		}
	}

/******************************************************************************************/

	function validar_dataEquipa(num)
	{

		var v_idade;
		v_idade = 'idade_'+num;

		var data = document.forms[0][v_idade].value;

		var dia = parseInt(data.substring(0,2),10);
		var mes = parseInt(data.substring(3,5),10);
		var ano = parseInt(data.substring(6,10),10);
		
		var mensagem = "";
		
		if (isNaN(data))
		{
			if (data.length < 10)
			{
				mensagem = "A data de nascimento do "+num+"º atleta.";
				alert(mensagemn);
				document.forms[0][v_idade].focus();				
				return false;
			}
		}

		if (ano > 1999)
		{
			mensagem = "A data de nascimento do "+num+"º atleta não se engloba nos escalões da prova.";			
			alert(mensagem);
			document.forms[0][v_idade].focus();			
			return false;
		}
		
		if (dia <= 31 && mes <=12)
		{
			if (data.substring(0,1)=='0' && data.substring(1,2) != '0' || data.substring(0,1)!='0')
			{
				if (data.substring(2,3)=="/")
				{
					if (data.substring(3,4)=='0' && data.substring(4,5)!='0' ||	data.substring(3,4)!='0')
					{
						if (data.substring(5,6)=="/")
						{
							if (data.substring(6,7)== '0' || data.substring(6,7)=='' && data.substring(7,8)!='0')
							{
								window.alert('O ano que você digitou não existe!');
								document.forms[0][v_idade].focus();
								return false;
							}
							if ((mes == 1)||(mes == 3)||(mes == 5)||(mes ==7)||(mes == 8)||(mes == 10)||(mes == 12))
							{
								if ((dia > 0) && (dia <= 31)) 
								{
									return true;
								}
								else
								{
									window.alert('Este dia não existe, certifique-se de que digitou corretamente!');
									document.forms[0][v_idade].focus();
									return false;
								}
							}
							if ((mes == 4)||(mes == 6)||(mes == 9)||(mes == 11))
							{
								if ((dia > 0 ) && (dia <= 30))
								{
									return true;
								}
								else
								{
									window.alert('Este dia não existe, certifique-se de que digitou correctamente!');
									document.forms[0][v_idade].focus();
									return false;
								}
							}
							if (mes == 2)
							{
								if ((dia > 0 ) && (dia <= 29))
								{
									if (dia == 29)
									{
										if ((ano % 4) == 0)
										{
											return true;
										}
										else
										{
											window.alert('Este dia não existe, certifique-se de que digitou corretamente!');
											document.forms[0][v_idade].focus();
											return false; 
										}
									}
									else
									{
										return true;
									}
								}
								else
								{
									window.alert('Este dia não existe, certifique-se de que digitou corretamente!');
									document.forms[0][v_idade].focus();
									return false; 
								}
							} 
						}
						else
						{
							window.alert('A data foi digitada fora do padrão (dd/mm/aaaa) !');
							document.forms[0][v_idade].focus();
							return false;
						}
					}
					else
					{
						window.alert('Você digitou um mês que não existe!');
						document.forms[0][v_idade].focus();
						return false;
					}
				}
				else
				{
					mensagem = "A data de nascimento do "+num+"º atleta foi digitada fora do padrão (dd/mm/aaaa) !";								
					window.alert(mensagem);
					document.forms[0][v_idade].focus();
					return false;
				}
			}
			else
			{
				window.alert('Você digitou um dia que não existe!');
				document.forms[0][v_idade].focus();
				return false;
			}
		}
		else
		{
			window.alert('A data de nascimento do '+num+'º atleta não existe, ou está fora do padrão (dd/mm/aaaa) !');			
			document.forms[0][v_idade].focus();
			return false;
		}
	}

/******************************************************************************************/
			
	function validaForm()
	{
	
		var hoje = new Date();
		var minutes = 1000*60;
		var hours = minutes*60;
		var days = hours*24;
		var years = days*365;
		var d = new Date();
		var t = d.getTime();
		var y = t/years;
		var idade = document.forms[0]['Idade'].value;
		var xyear = parseInt(idade.substring(6,10),10); /*pulls the value of byear*/
		var yyear = xyear-1970;  /*subtracts byear from 1970.*/
		var zyear = y-yyear;

		var mensagem = "";
		var mensagemTotal = "Para continuar terá de preencher:\n\n";
	
		/*var validRegExp = '/^[^@]+@[^@]+.[a-z]{2,}$/i';*/
		var validRegExp = /^.+@.+\..{2,3}$/;
		var emailFilter = /^.+@.+\..{2,3,4,6}$/;		
		var illegalChars = /[\(\)\ç\<\>\,\;\:\\\/\"\[\]]/;
		var strEmail = document.forms[0]['Sender_email'].value;

		if (strEmail.search(validRegExp) == '-1')
		{ mensagem += "O email do atleta está vazio ou incorrecto.\n"; }

		if (strEmail.match(illegalChars))
		{ mensagem += "O email do atleta está vazio ou incorrecto.\n"; }
		
		if (strEmail.indexOf(" ")!=-1)
		{ mensagem += "O email do atleta está vazio ou incorrecto.\n"; }
		
		if (document.forms[0]['Sender'].value == '')
		{ mensagem += "O nome do Atleta.\n"; }
		
		if (document.forms[0]['Sender'].value.length < 13)
		{ mensagem += "O nome do Atleta é demasiado curto.\n"; }
		
		if (document.forms[0]['Idade'].value == '' || document.forms[0]['Idade'].value.length < 9) 
		{ mensagem += "A data de nascimento do Atleta.\n"; }

		if (document.forms[0]['sexo'].value == 'seleccione')
		{ mensagem += "O sexo do atleta.\n"; }

		if (document.forms[0]['pais'].value == 'seleccione')
		{ mensagem += "A nacionalidade do atleta.\n"; }

		if (document.forms[0]['pergunta'].value == 'seleccione')		
		{ mensagem += "Como teve conhecimento da prova.\n"; }

		if (mensagem != "")	
		{
			alert(mensagemTotal+mensagem);
			return false;
		}
		else
		{
			return true;
		}	
	
	}
	
/******************************************************************************************/

	function validaFormPequenada()
	{

		var hoje = new Date();
		var minutes = 1000*60;
		var hours = minutes*60;
		var days = hours*24;
		var years = days*365;
		var d = new Date();
		var t = d.getTime();
		var y = t/years;
		var idade = document.forms[0]['Idade'].value;
		var xyear = parseInt(idade.substring(6,10),10); /*pulls the value of byear*/
		var yyear = xyear-1970;  /*subtracts byear from 1970.*/
		var zyear = y-yyear;
		
		if (!validar_dataPequenada())
		{
			return false;
		}

		var mensagem = "";
		var mensagemTotal = "Para continuar terá de preencher:\n\n";

		var validRegExp = /^.+@.+\..{2,3}$/;
		var emailFilter = /^.+@.+\..{2,3,4,6}$/;		
		var illegalChars = /[\(\)\ç\<\>\,\;\:\\\/\"\[\]]/;
		var strEmail = document.forms[0]['Sender_email'].value;

		if (document.forms[0]['Encarregado_nome'].value == '')
		{ mensagem += "O nome do Encarregado de Educação.\n"; }

		if (strEmail.search(validRegExp) == '-1')
		{ mensagem += "O email do Encarregado de Educação está vazio ou incorrecto.\n"; }

		if (strEmail.match(illegalChars))
		{ mensagem += "O email do Encarregado de Educação está vazio ou incorrecto.\n"; }
		
		if (strEmail.indexOf(" ")!=-1)
		{ mensagem += "O email do Encarregado de Educação está vazio ou incorrecto.\n"; }

		if (document.forms[0]['Telefone'].value == '')
		{ mensagem += "O telefone do Encarregado de Educação.\n"; }
		
		if (document.forms[0]['Telefone'].value == 0)
		{ mensagem += "O telefone do Encarregado de Educação.\n"; }

		if (document.forms[0]['Telefone'].value.length != 9)
		{ mensagem += "O telefone do Encarregado de Educação não está completo.\n"; }

		if (document.forms[0]['Telefone'].value.substring(0,1) != 9)
		{ mensagem += "O telefone do Encarregado de Educação não está correcto.\n"; }

		if (document.forms[0]['Sender'].value == '')
		{ mensagem += "O nome do Atleta.\n"; }
		
		if (document.forms[0]['Sender'].value.length < 10)
		{ mensagem += "O nome do Atleta é demasiado curto.\n"; }
				
		if (document.forms[0]['Idade'].value == '' || document.forms[0]['Idade'].value.length < 10) 
		{ mensagem += "A data de nascimento do Atleta.\n"; }

		if (document.forms[0]['sexo'].value == 'seleccione')
		{ mensagem += "O sexo do Atleta.\n"; }

		if (document.forms[0]['pais'].value == 'seleccione')
		{ mensagem += "A nacionalidade do Atleta.\n"; }

		if (document.forms[0]['escalao'].value == '' || document.forms[0]['escalao'].value == 'seleccione')
		{ mensagem += "O escalão do atleta.\n"; }

		if (zyear > 4 && zyear < 7 && document.forms[0]['escalao'].value != 'Bambis')
		{ mensagem += "O escalão do atleta não corresponde à idade, seleccione outro.\n"; }
		
		if (zyear >= 7 && zyear < 10 && document.forms[0]['escalao'].value != 'Benjamins A')
		{ mensagem += "O escalão do atleta não corresponde à idade, seleccione outro.\n"; }
		
		if (zyear >= 10 && zyear < 12 && document.forms[0]['escalao'].value != 'Benjamins B')
		{ mensagem += "O escalão do atleta não corresponde à idade, seleccione outro.\n"; }
		
		if (document.forms[0]['acompanhado'].value == 'S' && document.forms[0]['acompanhante_nome'].value == 'Nome do Adulto')
		{ mensagem += "O nome do adulto que vai acompanhar a criança.\n"; }

		if (mensagem != "")	
		{
			alert(mensagemTotal+mensagem);
			return false;
		}
		else
		{
			return true;
		}	
	
	}

/******************************************************************************************/

	function validaFormEquipa()
	{
		
		var counter=0;
		var nome;
		for (i=1;i<=20;i++)
		{
			nome = 'atleta_'+i;
			if (document.forms[0][nome].value.length)
			{
				counter++;
			}
		}
	
		var hoje = new Date();
		var minutes = 1000*60;
		var hours = minutes*60;
		var days = hours*24;
		var years = days*365;
		var d = new Date();
		var t = d.getTime();
		var y = t/years;
		var idade = document.forms[0]['idade_1'].value;
		var xyear = parseInt(idade.substring(6,10),10); /*pulls the value of byear*/
		var yyear = xyear-1970;  /*subtracts byear from 1970.*/
		var zyear = y-yyear;

		var mensagem = "";
		var mensagemTotal = "Para continuar terá de preencher:\n\n";
	
		var validRegExp = /^.+@.+\..{2,3}$/;
		var emailFilter = /^.+@.+\..{2,3,4,6}$/;		
		var illegalChars = /[\(\)\ç\<\>\,\;\:\\\/\"\[\]]/;
		var strEmail = document.forms[0]['Sender_email'].value;

		if (strEmail.search(validRegExp) == '-1')
		{ mensagem += "O email da equipa está vazio ou incorrecto.\n"; }

		if (strEmail.match(illegalChars))
		{ mensagem += "O email da equipa está vazio ou incorrecto.\n"; }
		
		if (strEmail.indexOf(" ")!=-1)
		{ mensagem += "O email da equipa está vazio ou incorrecto.\n"; }
	
		if (document.forms[0]['Sender'].value == '')
		{ mensagem += "O nome do Responsável.\n"; }
		
		if (document.forms[0]['Sender'].value.length < 8)
		{ mensagem += "O nome do Responsável é demasiado curto.\n"; }
		
		if (document.forms[0]['Equipa'].value == '' || document.forms[0]['Equipa'].value.length < 3)
		{ mensagem += "O nome da Equipa.\n"; }
		
        var	v_atleta;
		var v_sexo;
		var v_idade;
		var v_pais;
		var j=1;
		for (j=1;j<=counter;j++)
		{
			v_atleta = 'atleta_'+j;
			v_sexo = 'sexo_'+j;
			v_idade = 'idade_'+j;
			v_pais = 'pais_'+j;

			if (document.forms[0][v_idade].value == '' || document.forms[0][v_idade].value.length < 10) 
			{ mensagem += "A data de nascimento do "+j+"º atleta.\n"; }
	
			if (document.forms[0][v_sexo].value == 'seleccione')
			{ mensagem += "O sexo do "+j+"º atleta.\n"; }
			
			if (document.forms[0][v_pais].value == 'seleccione')
			{ mensagem += "A nacionalidade do "+j+"º atleta.\n"; }

			if (!validar_dataEquipa(j))
			{
				return false;
			}

		}

		if (mensagem != "")	
		{
			alert(mensagemTotal+mensagem);
			return false;
		}
		else
		{
			return true;
		}	
	
	}
	
/******************************************************************************************/

	function popup(targetPage,w,h) 
	{
		var winl = (screen.width - w) / 2;
		var wint = (screen.height - h) / 2;
		var msgWin = "SSLX"
		winpar = 'height='+h+',width='+w+',top='+wint+',left='+winl+',scrollbars=0,status=0,resizable=0,dependent=1';
		newWin = window.open(targetPage, msgWin, winpar);
	}
	
/******************************************************************************************/

	function popup2(targetPage,w,h) 
	{
		var winl = (screen.width - w) / 2;
		var wint = (screen.height - h) / 2;
		var msgWin = "SSLX"
		winpar = 'height='+h+',width='+w+',top='+wint+',left='+winl+',scrollbars=1,status=0,resizable=0,dependent=1';
		newWin = window.open(targetPage, msgWin, winpar);
	}
	
	
/******************************************************************************************/	
	
	function correio (nome,apelido,dominio,txt) 
	{
		var a;
		var b;
		var c;
		var d;
		var e;
		var h;
		var ender; 
		
		a = '<a href=\"mai';
		b = '@';
		c = '\">';
		a +='lto:';
		e ='</a>';
		d='.';
		
		if (apelido) h=nome+d+apelido;
		else  h=nome;
		
		ender=h+b+dominio;
		
		if (!txt) txt=ender;
		
		document.write(a+ender+c+txt+e);
	}
	
	