//  ----------------------------------------------------------------------------------------  //
//  ------------------------------------- Função para Validação  ---------------------------  //

String.prototype.trim = trim;
function trim()
{
	return(this.replace(/^\s*|$/gi,""));
}

function checa_mail(mail)
{
	return (/^\w+([\.-_]?\w+)*@\w+([\.-_]?\w+)*(\.\w{2,3})+$/.test(mail));
}

//  ----------------------------------------------------------------------------------------  //
//  ------------------------------------- Função Verifica navegador   ---------------------  //

//Verifica qual o browser do visitante e armazena na variável púbica clientNavigator,  
//Caso Internet Explorer(IE) outros (Other)  
if (navigator.appName.indexOf('Microsoft') != -1)
{  
	clientNavigator = "IE";  
}
else
{  
	clientNavigator = "Other";  
}

//  ----------------------------------------------------------------------------------------  //
//  ------------------------------------- Função Verifica Data  ---------------------------  //

function Verifica_Data(data, obrigatorio)
{  
	//Se o parâmetro obrigatório for igual à zero, significa que elepode estar vazio, caso contrário, não  
	var data = document.getElementById(data);  
	var strdata = data.value;  
	if((obrigatorio == 1) || (obrigatorio == 0 && strdata != ""))
	{  
		//Verifica a quantidade de digitos informada esta correta.  
		if (strdata.length != 10)
		{
			alert("Formato da data não é válido. Formato correto: - dd/mm/aaaa.");  
			data.focus();  
			return false  
		}
		//Verifica máscara da data  
		if ("/" != strdata.substr(2,1) || "/" != strdata.substr(5,1))
		{
			alert("Formato da data não é válido. Formato correto: - dd/mm/aaaa.");  
			data.focus();  
			return false  
		}
		dia = strdata.substr(0,2)  
		mes = strdata.substr(3,2);  
		ano = strdata.substr(6,4);  
		//Verifica o dia  
		if (isNaN(dia) || dia > 31 || dia < 1)
		{  
			alert("Formato do dia não é válido.");  
			data.focus();  
			return false  
		}
		if (mes == 4 || mes == 6 || mes == 9 || mes == 11)
		{  
			if (dia == "31")
			{  
				alert("O mês informado não possui 31 dias.");  
				data.focus();  
				return false  
			}  
		}  
		if (mes == "02")
		{  
			bissexto = ano % 4;  
			if (bissexto == 0)
			{
				if (dia > 29)
				{
					alert("O mês informado possui somente 29 dias.");  
					data.focus();  
					return false  
				}
			}
			else
			{  
				if (dia > 28)
				{  
					alert("O mês informado possui somente 28 dias.");  
					data.focus();  
					return false  
				}
			}
		}
		//Verifica o mês  
		if (isNaN(mes) || mes > 12 || mes < 1)
		{  
			alert("Formato do mês não é válido.");  
			data.focus();  
			return false  
		}  
		//Verifica o ano  
		if (isNaN(ano))
		{
			alert("Formato do ano não é válido.");  
			data.focus();
			return false
		}
	} 
}

//  ----------------------------------------------------------------------------------------  //
//  ------------------------------------- Função Verifica Tamanho --------------------------  //

function Verifica_Tamanho(campo, tamanho)
{  
	//usado para campos textarea onde não se tem o atributo maxlenght  
	var campo = document.getElementById(campo);  
	if(campo.value.length > tamanho)
	{  
		alert("O campo suporta no máximo " + tamanho + " caracteres.");  
		campo.focus();  
		return false  
	} 
}  

//  ----------------------------------------------------------------------------------------  //
//  ------------------------------------- Função Verifica CEP  ---------------------------  //

function Verifica_Cep(cep, obrigatorio)
{  
	//Se o parâmetro obrigatório for igual à zero, significa que elepode estar vazio, caso contrário, não  
	var cep= document.getElementById(cep);  
	var strcep = cep.value;  
	if((obrigatorio == 1) || (obrigatorio == 0 && strcep != ""))
	{  
		if (strcep.length != 9)
		{  
			alert("CEP informado inválido.");  
			cep.focus();  
			return false  
		}//if (strcep
		else
		{  
			if (strcep.indexOf("-") != 5)
			{
				alert("Formato de CEP informado inválido.");  
				cep.focus();  
				return false  
			}//if (strcep.in
			else
			{
				if (isNaN(strcep.replace("-","0")))
				{  
					alert("CEP informado inválido.");  
					cep.focus();
					return false  
				}//if (isNaN(s
			}//else
		}// else
	}//if((obrigat
}//function

//  ----------------------------------------------------------------------------------------  //
//  ------------------------------------- Função Verifica Caracteres -----------------------  //

function Bloqueia_Caracteres(evnt)
{  
//Função permite digitação de números  
	if (clientNavigator == "IE")
	{  
		if (evnt.keyCode < 48 || evnt.keyCode > 57)
		{  
			return false  
		}  
	}
	else
	{  
		if ((evnt.charCode < 48 || evnt.charCode > 57) && evnt.keyCode == 0)
		{  
			return false  
		}  
	}  
}

//  ----------------------------------------------------------------------------------------  //
//  ------------------------------------- Função Ajusta Data        -----------------------  //

function Ajusta_Data(input, evnt)
{  
	//Ajusta máscara de Data e só permite digitação de números  
	if (input.value.length == 2 || input.value.length == 5)
	{  
		if(clientNavigator == "IE")
		{  
			input.value += "/";  
		}
		else
		{  
			if(evnt.keyCode == 0)
			{  
				input.value += "/";  
			}  
		}  
	}  
	//Chama a função Bloqueia_Caracteres para só permitir a digitação de números  
	return Bloqueia_Caracteres(evnt);  
}

//  ----------------------------------------------------------------------------------------  //
//  ------------------------------------- Função Ajusta CEP          -----------------------  //

function Ajusta_Cep(input, evnt)
{  
	//Ajusta máscara de CEP e só permite digitação de números  
	if (input.value.length == 5)
	{  
		if(clientNavigator == "IE")
		{  
			input.value += "-";  
		}
		else
		{  
			if(evnt.keyCode == 0)
			{  
				input.value += "-";  
			}  
		}  
	}  
	//Chama a função Bloqueia_Caracteres para só permitir a digitação de números  
	return Bloqueia_Caracteres(evnt);  
}
//  ----------------------------------------------------------------------------------------  //
//  --------------------------------------- Validando Contato ----------------------------  //
function contato(formulario)
{ 
	if(formulario.nome.value.trim()=="")
  { alert("Digite seu Nome Por Favor!");
    formulario.nome.focus();
    return false;
  }
	if(formulario.empresa.value.trim()=="")
  { alert("Informe o Empresa Por Favor!");
    formulario.empresa.focus();
    return false;
  } 
	if(formulario.email.value.trim()=="")
  { alert("Informe seu E-Mail Por Favor!");
    formulario.email.focus();
    return false; emaildestino
  }
  if(!checa_mail(formulario.email.value))
  { alert("Seu E-mail não é válido");
    formulario.email.focus();
    return false;
  }
	if(formulario.end.value.trim()=="")
  { alert("Digite seu Endereço Por Favor!");
    formulario.end.focus();
    return false;
  }
	if(formulario.cidade.value.trim()=="")
  { alert("Digite sua Cidade Por Favor!");
    formulario.cidade.focus();
    return false;
  } 
	if(formulario.fone.value.trim()=="")
  { alert("Informe seu Telefone Por Favor!");
    formulario.fone.focus();
    return false;
  }
	if(formulario.mensagem.value.trim()=="")
  { alert("Digite sua Mensagem Por Favor!");
    formulario.mensagem.focus();
    return false;
  }
return (true);
}
//  ----------------------------------------------------------------------------------------  //
//  --------------------------------------- Validando NewsLatter ----------------------------  //
function news(newslatter)
{ 
	if(newslatter.SMT_NOME.value.trim()=="")
  { alert("Digite seu Nome Por Favor!");
    newslatter.SMT_NOME.focus();
    return false;
  } 
	if(newslatter.SMT_MAIL.value.trim()=="")
  { alert("Digite seu E-mail Por Favor!");
    newslatter.SMT_MAIL.focus();
    return false;
  }
  if(!checa_mail(newslatter.SMT_MAIL.value))
  { alert("Seu E-mail não é válido");
    newslatter.SMT_MAIL.focus();
    return false;
  }
return (true);
}
