﻿function isValidEmail(str) {
	var at="@";
	var dot=".";
	var lat = str.indexOf(at);
	var lstr = (str.length) - 1;
	var ldot = str.indexOf(dot);
	
	if (str.indexOf(at)==-1 || str.indexOf(at)==0 || str.indexOf(at)==lstr) { return false }
	if (str.indexOf(dot)==-1 || str.indexOf(dot)==0 || str.indexOf(dot)==lstr) { return false }
	if (str.indexOf(at,(lat+1))!=-1) { return false }
	if (str.substring(lat-1,lat)==dot || str.substring(lat+1,lat+2)==dot) { return false }
	if (str.indexOf(dot,(lat+2))==-1) { return false }
	if (str.indexOf(" ")!=-1) { return false }
	return true					
}
function isNumeric(sText){
   var ValidChars = "0123456789 +";
   var IsNumber=true;
   var Char;
 
   for (i = 0; i < sText.length && IsNumber == true; i++) 
      { 
      Char = sText.charAt(i); 
      if (ValidChars.indexOf(Char) == -1) 
         {
         IsNumber = false;
         }
      }
   return IsNumber;
}
function submeter(f) {
	var res = true;
	var alerta = "";
	if (submitted) {
		alerta = "Os dados já foram submetidos. Aguarde por favor.";
		res = false;
	}
	else {
		if (f.nome.value=="") {
			res = false;
			alerta = "Tem de inserir o Primeiro Nome.\n";
		}
		if (f.apelido.value=="") {
			res = false;
			alerta = alerta + "Tem de inserir o Último Nome.\n";
		}
		if (f.email.value=="") {
			res = false;
			alerta = alerta + "Tem de inserir o endereço de Email.\n";
		}
		else {
			if (!isValidEmail(f.email.value)) {
				res = false;
				alerta = alerta + "Tem de inserir um endereço de Email válido.\n";
			}	
		}
		if (f.pais.value==0) {
			res = false;
			alerta = alerta + "Tem de escolher um país.\n";
		}
		if(f.telef.value=="") {
			res = false;
			alerta = alerta + "Tem de inserir o nº de telefone.\n";
		}
		else {
			if (!isNumeric(f.telef.value)) {
				res = false;
				alerta = alerta + "Tem de inserir um nº de telefone válido.\n(utilize apenas os caracteres '+0123456789' ou o espaço)\n";
			}
		}		
	}
	if(res) {
		submitted = 1;
		f.submit();
	}
	else {
		alert(alerta);	
	}
}
