
// Title: VALIDAR
// Description: Validação de Formularios
// Version: 1.0 (commented source)
// Date: 10-04-2009 (mm-dd-yyyy)

// --------------------------------------------------------------------------------
// Funcção de verificação de campo Numerico
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;
}

// --------------------------------------------------------------------------------
// Funcção de verificação de email

function echeck(str) {

		var at="@"
		var dot="."
		var lat=str.indexOf(at)
		var lstr=str.length
		var ldot=str.indexOf(dot)
		if (str.indexOf(at)==-1){
		   alert("Email inválido")
		   return false
		}

		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					
}

// --------------------------------------------------------------------------------
// Funcção de Validação de Formulário de Grupos


function ValidarGrupo(idioma){

	var nome=document.Grupo.nome;
	var people=document.Grupo.people;
	var arrival=document.Grupo.arrival;
	var Departure=document.Grupo.Departure;
	var Nights=document.Grupo.Nights;
	var email=document.Grupo.Email;
	var Remail=document.Grupo.REmail;
	
	//NOME
	if ((nome.value==null)||(nome.value=="")){
		if (idioma=="P"){
			alert("Favor escrever o nome.")
		}
		else if (idioma=="E"){
			alert("Por Favor, escriba su Nombre.")
		}
		else{
			alert("Please type your name.")
		}
		nome.focus();
		return false;
	}		
	//NUMERO PESSOAS
	if ((people.value==null)||(people.value=="")){
		if (idioma=="P"){
			alert("Favor escrever o Número de Pessoas.");
		}
		else if (idioma=="E"){
			alert("Por favor, escriba el Número de Personas.")
		}
		else{
			alert("Please type your the Number of Persons.")
		}

		people.focus();
		return false;
	}		
	if (IsNumeric(people.value)==false){
		if (idioma=="P"){
			alert("O campo Número de Pessoas requer um valor numérico.");
		}
		else if (idioma=="E"){
			alert("El campo Número de Personas requiere un valor numérico.")
		}
		else{
			alert("Numeric value required.")
		}
		people.focus();
		return false;
	}
	if (people.value<12){
		if (idioma=="P"){
			alert("O Número MÍNIMO de Pessoas para grupos é de 12.");
		}
		else if (idioma=="E"){
			alert("El número mínimo de personas para los grupos es de 12.")
		}
		else{
			alert("The MINIMUN persons for a group is 12.")
		}
		people.focus();
		return false;
	}
	//DATA CHEGADA
	if ((arrival.value==null)||(arrival.value=="")){
		if (idioma=="P"){
			alert("Favor escrever a Data de Chegada.");
		}
		else if (idioma=="E"){
			alert("Por Favor, escriba la Fecha de Llegada.")
		}
		else{
			alert("Please type your Date of Arrival.")
		}
		arrival.focus();
		return false;
	}		
	//DATA PARTIDA
	if ((Departure.value==null)||(Departure.value=="")){
		if (idioma=="P"){
			alert("Favor escrever a Data de Partida.");
		}
		else if (idioma=="E"){
			alert("Por Favor, escriba la Fecha de Salida.")
		}
		else{
			alert("Please type your Date of Departure.")
		}
		Departure.focus();
		return false;
	}		
	//NUMERO DE NOITES
	if ((Nights.value==null)||(Nights.value=="")){
		if (idioma=="P"){
			alert("Favor escrever o Número de Noites.");
		}
		else if (idioma=="E"){
			alert("Por Favor, escriba lo Numero de Noches.")
		}
		else{
			alert("Please type the Number of Nights.")
		}
		Nights.focus();
		return false;
	}		
	if (IsNumeric(Nights.value)==false){
		if (idioma=="P"){
			alert("O campo Número de Noites requer um valor numérico.");
		}
		else if (idioma=="E"){
			alert("El campo Número de Noches requiere un valor numérico.")
		}
		else{
			alert("Numeric value required.")
		}
		Nights.focus();
		return false;
	}
	if (Nights.value<1){
		if (idioma=="P"){
			alert("O Número MÍNIMO de Noites para grupos é de 1.");
		}
		else if (idioma=="E"){
			alert("El número mínimo de Noches para los grupos es de 1.")
		}
		else{
			alert("The MINIMUN Nights for a group is 1.")
		}
		Nights.focus();
		return false;
	}

	//EMAIL
	if ((email.value==null)||(email.value=="")){
		if (idioma=="P"){
			alert("Favor escrever o Email.")
		}
		else if (idioma=="E"){
			alert("Por favor escriba su Email.")
		}
		else{
			alert("Please type your Email.")
		}
		email.focus();
		return false;
	}	
	if (echeck(email.value)==false){
		if (idioma=="P"){
			alert("Email inválido.")
		}
		else if (idioma=="E"){
			alert("Email no válido.")
		}
		else{
			alert("Invalid Email.")
		}
		email.focus();
		return false;
	}
	if ((Remail.value==null)||(Remail.value=="")){
		if (idioma=="P"){
			alert("Favor re-escrever o Email.");
		}
		else if (idioma=="E"){
			alert("Por favor re-escriba su Email.")
		}
		else{
			alert("Please re-type your Email.");
		}
		Remail.focus();
		return false;
	}	
	if (email.value!=Remail.value){
		if (idioma=="P"){
			alert("Favor confirmar o seu email.");
		}
		else if (idioma=="E"){
			alert("Por favor, confirme su Email.")
		}
		else{
			alert("Please, confirm your email.");
		}
		Remail.focus();
		return false;
	}	
	return true;
 }

