function carac_invalidos(frm){
var i;
for(i=0;i<frm.length;i++){
if(frm.item(i).value.indexOf("\"")!=-1 || frm.item(i).value.indexOf("'")!=-1 ||
frm.item(i).value.indexOf("<")!=-1 || frm.item(i).value.indexOf(">")!=-1){
alert("Por favor, não use aspas duplas, aspas simples ou sinais de menor ou maior na caixa de texto \""+frm.item(i).name+"\"");
frm.item(i).focus();
return false;}}
return true;}
function valida_dados(frm){
if(!carac_invalidos(frm)){
return false;}
if(frm.nome.value==""){
alert("Preencha o campo 'Nome'.");
frm.nome.focus();
return false;}
if(valida_email(frm.mail))
return true
else
return false}
function valida_email(cmp){
var comeco=new RegExp("[A-Za-z0-9_-]")
var simbolos_validos=new RegExp("[A-Za-z0-9_.@-]")
var pontos_seguidos=new RegExp("[.]{2,}")
var esq, dir, i
if(cmp.value.length<6){
alert("\"E-MAIL\" inválido!\nEndereços de E-mail costumam ter pelo menos 6 caracteres");
cmp.focus();
return false;}
if(!comeco.test(cmp.value.substr(0,1))){
alert("\"E-MAIL\" inválido!\nEndereços de E-mail devem começar com uma letra ou número");
cmp.focus();
return false;}
if(cmp.value.indexOf("@")==-1){
alert("\"E-MAIL\" inválido!\nEndereços de E-mail contém obrigatoriamente o caracter \"@\"");
cmp.focus();
return false;}
else{
if(cmp.value.indexOf("@")!=cmp.value.lastIndexOf("@")){
alert("\"E-MAIL\" inválido!\nEndereços de E-mail podem conter apenas um caracter \"@\"");
cmp.focus();
return false;}}
if(pontos_seguidos.test(cmp.value)){
alert("\"E-MAIL\" inválido!\nEndereços de E-mail não podem conter pontos seguidos!");
cmp.focus();
return false;}
for(i=0;i<cmp.value.length;i++){
if(!simbolos_validos.test(cmp.value.substr(i,1))){
alert("\"E-MAIL\" inválido!\nSímbolos Inválidos");
cmp.focus();
return false;}}
if(cmp.value.substring(cmp.value.lastIndexOf("."),cmp.value.length).length<3){
alert("\"E-MAIL\" inválido!\nEsta extensão não parece válida. Endereços de E-mail precisam conter ao menos 2 caracteres após o último ponto.");
cmp.focus();
return false;}
esq=cmp.value.substr(cmp.value.indexOf("@")-1,1);
dir=cmp.value.substr(cmp.value.indexOf("@")+1,1);
if(!(comeco.test(esq) && comeco.test(dir))){
alert("\"E-MAIL\" inválido!\nEndereços de E-mail precisam conter ao menos uma letra antes e após o caracter \"@\".");
cmp.focus();
return false;}
dir=cmp.value.substr(cmp.value.indexOf("@")+1,cmp.value.length);
if(dir.indexOf(".",0)==-1){
alert("\"E-MAIL\" inválido!\nEndereços de E-mail precisam conter ao menos 1 ponto após o caracter \"@\".");
cmp.focus();
return false;}
return true;}