// rodrigo lessa //
function criaFlash(a, w, h) {
	document.writeln('<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" ');
	document.write	(' codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,29,0" ');
	document.write	(' width="'+w+'" height="'+h+'">');
	document.writeln('<param name="movie" value="'+a+'">');
	document.writeln('<param name="quality" value="high">');
	document.writeln('<embed src="'+a+'" quality="high" ');
	document.write	(' pluginspage="http://www.macromedia.com/go/getflashplayer" ');
	document.write	(' type="application/x-shockwave-flash" ');
	document.write	(' width="'+w+'" height="'+h+'"></embed>');
	document.writeln('</object>');
}

function abreJanela(a,w,h,s) {
	wnd=window.open(a,"wnd","toolbar=no,location=no,status=no,menubar=no,scrollbars=" + s + ",resizable=no,width=" + w + ",height=" + h + ",top=" + ((screen.height / 2) - (h / 2)) + ",left=" + ((screen.width / 2) - (w / 2)));
	wnd.focus();
}

function abreJanelaMinMax(a,w,h,s) {
	wnd=window.open(a,"wnd","toolbar=no,location=no,status=no,menubar=no,scrollbars=" + s + ",resizable=yes,width=" + w + ",height=" + h + ",top=" + ((screen.height / 2) - (h / 2)) + ",left=" + ((screen.width / 2) - (w / 2)));
	wnd.focus();
}

function abreCertificado(a,w,h,s) {
	wnd=window.open(a,"wnd","toolbar=no,location=no,status=no,menubar=no,scrollbars=" + s + ",resizable=yes,width=" + w + ",height=" + h + ",top=" + ((screen.height / 2) - (h / 2)) + ",left=" + ((screen.width / 2) - (w / 2)));
	wnd.focus();
}

function janela(url){
  window.open(url,'janela','toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=yes,resizable=no,copyhistory=no,width=797,height=545,top=0,left=0')
}
function janela1(url){
  window.open(url,'flutuante','toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=yes,resizable=yes,copyhistory=no,width=680,height=540,top=0,left=0')
}

function janela2(url){
  window.open(url,'duvidas','toolbar=no,location=no,directories=no,statusbar=no,status=no,menubar=no,scrollbars=yes,resizable=no,copyhistory=no,width=' + (screen.width - 10) + ',height=' + (screen.height - 65) + ',top=0,left=0')
}
function janela3(url){
  window.open(url,'duvidas', 'toolbar=no,location=no,status=no,scrollbars=yes,directories=no,width=680,height=280,top=20,left=80');
}

function abreJanelaPrincipal(url){
  window.open(url,'janelaprincipal','toolbar=no,location=no,directories=no,statusbar=no,status=no,menubar=no,scrollbars=yes,resizable=no,copyhistory=no,width=' + (screen.width - 10) + ',height=' + (screen.height - 65) + ',top=0,left=0')
}

function comunicado()
{
  window.open('comunicado.html', 'comunicado', 'toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=yes,resizable=no,copyhistory=no,width=400,height=350,top=0,left=0');
}
  
function NewWindow(mypage,myname,w,h,scroll,pos){
if(pos=="random"){LeftPosition=(screen.width)?Math.floor(Math.random()*(screen.width-w)):100;TopPosition=(screen.height)?Math.floor(Math.random()*((screen.height-h)-75)):100;}
if(pos=="center"){LeftPosition=(screen.width)?(screen.width-w)/2:100;TopPosition=(screen.height)?(screen.height-h)/2:100;}
else if((pos!="center" && pos!="random") || pos==null){LeftPosition=0;TopPosition=20}
settings='width='+w+',height='+h+',top='+TopPosition+',left='+LeftPosition+',scrollbars='+scroll+',location=no,directories=no,status=no,scrollbars=yes,menubar=no,toolbar=no,resizable=no';
win=window.open(mypage,myname,settings);}

function NewWindowAcomp(mypage,myname,w,h,scroll,pos){
if(pos=="random"){LeftPosition=(screen.width)?Math.floor(Math.random()*(screen.width-w)):100;TopPosition=(screen.height)?Math.floor(Math.random()*((screen.height-h)-75)):100;}
if(pos=="center"){LeftPosition=(screen.width)?(screen.width-w)/2:100;TopPosition=(screen.height)?(screen.height-h)/2:100;}
else if((pos!="center" && pos!="random") || pos==null){LeftPosition=0;TopPosition=20}
settings='width='+w+',height='+h+',top='+TopPosition+',left='+LeftPosition+',scrollbars='+scroll+',location=no,directories=no,status=no,statusbar=no,scrollbars=no,menubar=no,toolbar=no,resizable=no';
win=window.open(mypage,myname,settings);}

function openBlank(url){window.open(url)}

function checkBrowser(){
  T=this
  b=navigator.appName
  v=navigator.appVersion
  u=navigator.userAgent
  if(b=='Netscape')T.b='ns'
  else if(b=='Microsoft Internet Explorer')T.b='ie'
  else T.b=b
  T.v=parseInt(v)
  T.ns=(T.b=='ns'&&T.v>=4)
  T.ns4=(T.b=='ns'&&T.v==4)
  T.ns5=(T.b=='ns'&&T.v==5)
  T.ns6=(T.b=='ns'&&T.v==5)
  T.ie=(T.b=='ie'&&T.v>=4)
  T.ie4=(u.indexOf('MSIE 4')>0)
  T.ie5=(u.indexOf('MSIE 5.0')>0)
  T.ie55=(u.indexOf('MSIE 5.5')>0)
  T.ie6=(u.indexOf('MSIE 6.0')>0)
  if(T.ie5)T.v=5
  if(T.ie55)T.v=5.5
  if(T.ie6)T.v=6
  T.min=(T.ns||T.ie)
  T.dom=(T.v>=5)
  T.win=(u.indexOf('Win')>0)
  T.mac=(u.indexOf('Mac')>0)
}
is=new checkBrowser()

// layer de dúvida

function MM_reloadPage(init) {  //reloads the window if Nav4 resized
  if (init==true) with (navigator) {if ((appName=="Netscape")&&(parseInt(appVersion)==4)) {
    document.MM_pgW=innerWidth; document.MM_pgH=innerHeight; onresize=MM_reloadPage; }}
  else if (innerWidth!=document.MM_pgW || innerHeight!=document.MM_pgH) location.reload();
}
MM_reloadPage(true);


function MM_findObj(n, d) { //v4.0
  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 && document.getElementById) x=document.getElementById(n); return x;
}

function MM_showHideLayers() { //v3.0
  var i,p,v,obj,args=MM_showHideLayers.arguments;
  for (i=0; i<(args.length-2); i+=3) if ((obj=MM_findObj(args[i]))!=null) { v=args[i+2];
    if (obj.style) { obj=obj.style; v=(v=='show')?'visible':(v='hide')?'hidden':v; }
    obj.visibility=v; }
}

function showObj(objAtual, objIFrame, lateral, topo) {
/*
	document.all[objIFrame].style.left = objAtual.offsetParent.offsetLeft+133;
	document.all[objIFrame].style.top = objAtual.offsetParent.offsetTop+163;  
	document.all[objIFrame].style.visibility='visible';
	document.all['diviframe'].style.top = document.all[objIFrame].style.top;
	document.all['diviframe'].style.left = document.all[objIFrame].style.left;
	document.all['diviframe'].style.width = document.all[objIFrame].style.width;
	document.all['diviframe'].style.height = document.all[objIFrame].offsetHeight;
	document.all['diviframe'].style.visibility='visible';
*/
/*
	if (!e) var e = window.event;
	if (e.pageX || e.pageY) {
		x = e.pageX;
		y = e.pageY;
	}
	else if (e.clientX || e.clientY) {
		x = e.clientX + document.body.scrollLeft;
		y = e.clientY + document.body.scrollTop;
	}
*/
	x = objAtual.offsetParent.offsetLeft + objAtual.clientWidth - lateral;
	y = objAtual.clientHeight + objAtual.offsetParent.offsetTop + topo;
	
	if (document.all[objIFrame].style) {
		document.all[objIFrame].style.visibility='visible';
		document.all[objIFrame].style.posLeft = x;
		document.all[objIFrame].style.posTop = y;
		if (document.all['diviframe'].style) {
			document.all['diviframe'].style.visibility='visible';
			document.all['diviframe'].style.posLeft = x;
			document.all['diviframe'].style.posTop = y;
			document.all['diviframe'].style.width = document.all[objIFrame].style.width;
			document.all['diviframe'].style.height = document.all[objIFrame].offsetHeight;
		}
	}
	
}

function hideObj(obj) {
  if (document.all[obj].style)document.all[obj].style.visibility='hidden';
  if (document.all['diviframe'].style)document.all['diviframe'].style.visibility='hidden';
}

function showTag(nomeobj, lateral, topo) {
	if (document.all[nomeobj].style) {
		document.all[nomeobj].style.visibility='visible';
		document.all[nomeobj].style.posLeft = lateral;
		document.all[nomeobj].style.posTop = topo;
	}	
}
function hideTag(nomeobj) {
  if (document.all[nomeobj].style)document.all[nomeobj].style.visibility='hidden';
}

// Page Dimensions

function docW(){return(is.ie?(d.body.scrollWidth):(d.width))}
function docH(){return(is.ie?(d.body.scrollHeight):(d.height))}
function winW(){return(is.ie?(d.body.clientWidth):(window.innerWidth))}
function winH(){return(is.ie?(d.body.clientHeight):(window.innerHeight))}

//--------Chamada para as funções de CPF ou CNPJ

function validaCPFCNPJ(str)
{
  if (str.length <= 11)
  {verificaCPF(str);}
  else
  {validaCNPJ(str);}
}

// Esta função é de validação de CPF
function verificaCPF(s)
{

  
  var varFirstChr = s.charAt(0);
  var vaCharCPF = false;

  for (var i=0; i<=10; i++) { 
     var c = s.charAt(i);
         if (s.charAt(i) < "0" || s.charAt(i) > "9")
     { 
        alert("CPF inválido1!");
      document.formulario.cpf.focus();            
      return false;
       } 
             if(c!=varFirstChr) vaCharCPF = true; 
  } 

        if(!vaCharCPF) { 
      alert("CPF inválido2!");
      document.formulario.cpf.focus();
      return false;
        }   

  soma=0;
  for (i=0; i<9; i++) { 
    soma += (10-i) * (eval(s.charAt(i))); 
  } 
  digito_verificador = 11-(soma % 11);
  if ((soma % 11) < 2) digito_verificador = 0;
  if (eval(s.charAt(9)) != digito_verificador) {
    alert("CPF inválido!");
    document.formulario.cpf.focus();
    return false;
  } 
  soma=0;
  for (i=0; i<9; i++) {
    soma += (11-i) * (eval(s.charAt(i))); 
  }
  soma += 2 * (eval(s.charAt(9)));
  digito_verificador = 11-(soma % 11);
  if ((soma % 11) < 2) digito_verificador = 0;
  if (eval(s.charAt(10)) != digito_verificador) { 
    alert("CPF inválido!");
    document.formulario.cpf.focus();
    return false; 
  }   
  return true;
}


// Esta função é de validação de CPF - 2ª Forma
function verificaCPF2(s)
{
  
  
  var varFirstChr = s.charAt(0);
  var vaCharCPF = false;

  for (var i=0; i<=10; i++) { 
     var c = s.charAt(i);
         if (s.charAt(i) < "0" || s.charAt(i) > "9")
     { 
        return false;
       } 
             if(c!=varFirstChr) vaCharCPF = true; 
  } 

        if(!vaCharCPF) { 
      return false;
        }   

  soma=0;
  for (i=0; i<9; i++) { 
    soma += (10-i) * (eval(s.charAt(i))); 
  } 
  digito_verificador = 11-(soma % 11);
  if ((soma % 11) < 2) digito_verificador = 0;
  if (eval(s.charAt(9)) != digito_verificador) {
    return false;
  } 
  soma=0;
  for (i=0; i<9; i++) {
    soma += (11-i) * (eval(s.charAt(i))); 
  }
  soma += 2 * (eval(s.charAt(9)));
  digito_verificador = 11-(soma % 11);
  if ((soma % 11) < 2) digito_verificador = 0;
  if (eval(s.charAt(10)) != digito_verificador) { 
    return false; 
  }   
  return true;
}

function emailValido(pEmail) {
   var filter = /^([a-zA-Z0-9_.-])+@(([a-zA-Z0-9-])+.)+([a-zA-Z0-9]{2,4})+$/;
   if (!filter.test(pEmail)) return false; else return true;
}

//+++++++++++++   VERIFICA_EMAIL  ++++++++++++++++++++
/*recebe um objeto e verifica se é um email válido, retornando verdadeiro ou falso*/
function verifica_email(obj)
{ a = obj.value.length
  b = obj.value.indexOf("@")  
  c = obj.value.substring(b+1, a)
    if ((obj.value.length < 6) ||
       (obj.value.indexOf("@") == -1) || 
       (obj.value.indexOf(".") == -1) ||
       (obj.value.indexOf("@") == 0)  ||
       (obj.value.indexOf("@.") != -1) ||
       (obj.value.indexOf(".@") != -1) ||
     (obj.value.indexOf("..") != -1) ||
     (obj.value.indexOf(" ")!= -1) ||
     (c.indexOf("@")!= -1) )    
     {  return false;
     }
  else
  {return true}  
}
//+++++++++++++++++++++++++++++++++++++++++++++++++++++

// Validação de CNPJ

function validaCNPJ(CNPJ)
{
  var numero       = CNPJ;
  var strINT       = false;
  var i            = 0;
  var x            = 0;
  var k            = 0;
      
  var soma_1       = 0;
  var divisao_1    = 0;
  var multiplica_1 = 0;
  var digito_1     = 0;
      
  var soma_2       = 0;
  var divisao_2    = 0;
  var multiplica_2 = 0;
  var digito_2     = 0;
      
  var resto        = 0;
  var digito13     = 0;
  var digito14     = 0;
  
      
  while ((numero.charAt(k) == numero.charAt(++k)) && (k < numero.length))
        
  if (k == 13){strINT = true}
      
  digito13 = numero.charAt(12);
  digito14 = numero.charAt(13);
  
  soma_1 = 0;
  x      = 5;
  
  for (i=0; i < 12; i++)
  {
      soma_1 = soma_1 + (numero.charAt(i) * x);
      x = x-1;
      if (x == 1){x = 9;}
  }
      
  divisao_1    = soma_1 / 11;
  multiplica_1 = divisao_1 * 11;
  resto        = soma_1 - multiplica_1;
      
  resto = soma_1 % 11;
      
  if ((resto == 0)||(resto == 1))
  {
    digito_1 = 0;
  }
  else //(resto > 1)
  {
    digito_1 = 11 - resto;
  }
          
  //------------------------------
      
  soma_2 = 0;
  x      = 6;
  
  for (i=0; i < 12; i++)
  {
      soma_2 = soma_2 + (numero.charAt(i) * x);
      x = x-1;
      if (x == 1){x = 9;}
  }
      
  soma_2 = soma_2 + (digito_1 * 2);
      
  //divisao_2    = soma_2 / 11;
  //multiplica_2 = divisao_2 * 11;
  //resto        = soma_2 - multiplica_2;
      
  resto = soma_2 % 11;
      
  if ((resto == 0)||(resto == 1))
  {
    digito_2 = 0;
  }
  else 
  {
    digito_2 = 11 - resto;
  }
      
  if ((digito_1 == digito13)&&(digito_2 == digito14)&&(strINT == false))
  {
    return true;
  }
  else
  {
    return false; 
    
  }
}

function abrirgrande(url)
{

  x = Math.round(window.screen.availWidth / 2) - Math.round(700 / 2) ;
  y = Math.round(window.screen.availHeight / 2)  - Math.round(400 / 2) ;
  window.open(url, 'ad', "width=700, height=400, location=no, menubar=no, resizable=yes, directories=no, scrollbars=yes, status=no, toolbar=no, left=" + x + ", top=" + y) ;
}

/*/a tecla TAB sendo pressionada, ele pula direto pra o campo definido como "proximo" no formulario passado
function salta_campos(proximo, formulario)
{
  if (event.keyCode == 9)
  {
    document.formulario.proximo.focus();
    return false;
  }
}*/

function selectValue (Combo, sValor)
{
  var iCont;
  
  for (iCont = 0; iCont < Combo.length; iCont++)
  
  if (Combo.options[iCont].value == sValor)
  {
    Combo.selectedIndex = iCont;
    break;
  }
}

function checkStatus(objeto, criterio)
{
  if (criterio == '')
  {
    objeto.disabled = true;   
  }
}
/*
Function Replace(sString, sSubStringOld, sSubStringNew)
{
  var sStr = sString;
  
  while (sStr.search(sSubStringOld) != -1)
  {
    sStr = sStr.replace(sSubStringOld, sSubStringNew);
  } 
  return sStr;
}
*/

function LTrim(sString)
{
  var sStr = sString;
  
  while (sStr.charAt(0) == ' ')
  {
    sStr = sStr.slice(1);
  } 
  return sStr;
}


function RTrim(sString)
{
  var sStr = sString;
  
  while (sStr.charAt(sStr.length - 1) == ' ')
  {
    sStr = sStr.slice(0, -1);
  } 
  return sStr;
}


function Trim(sString)
{
  var sStr = sString;
  
  while (sStr.charAt(0) == ' ')
  {
    sStr = sStr.slice(1);
  }
  
  while (sStr.charAt(sStr.length - 1) == ' ')
  {
    sStr = sStr.slice(0, -1);
  }
  return sStr;  
}


function MTrim(sString)
{
  var sStr = sString;
  
  while (sStr.search(' ') != -1)
  {
    sStr = sStr.replace(' ', '');
  } 
  return sStr;
}

function Count(cChar)
{ 
  var iCont = 0;
  
  while (cC.search(sChar))
  {
    iCont++;
  } 
  return iCont;
}

function commaToPoint(oField) 
{
  if (window.event.keyCode == 44) window.event.keyCode = 46;  
}

function changeField(oCurrentField, oNextField, iLength)
{
  var sFieldValue = oCurrentField.value;
  
  if (sFieldValue.length == iLength)
  {
    oNextField.focus();
    oNextField.select();
  }
}


function isValidNumber (oField, iLen)
{
  var sColorBad  = '#d1d9e0';  
  var sColorGood = 'white';
  var re     = /^\d*$/;
  var sValor = oField.value;
  
  if (sValor.search(re) != -1 && sValor.length >= iLen)
  {
    //setColor(oField, sColorGood);
    return true;
  } 
  //setColor(oField, sColorBad);
  return false;
  
}


function isValidDigit (oField)
{
  var sColorBad  = '#d1d9e0';  
  var sColorGood = 'white';
  var re     = /^\d*$/;
  var sValor = oField.value;
  
  if (sValor.search(re) != -1)
  {
    //setColor(oField, sColorGood);
    return true;
  } 
  //setColor(oField, sColorBad);
  return false;
  
}


function isValidMail(oField)
{
    var re1 = new RegExp("(@.*@)|(\\.\\.)|(@\\.)|(^\\.)");
    var re2 = new RegExp("^.+\\@(\\[?)[a-zA-Z0-9\\-\\.]+\\.([a-zA-Z]{2,3}|[0-9]{1,3})(\\]?)$");
  var sColorBad  = '#d1d9e0';
  var sColorGood = 'white';
  var sMail      = new String (Trim(oField.value));
  
  if (!re1.test(sMail) && re2.test(sMail))
  {
    if ((sMail.indexOf("`") != -1) || (sMail.indexOf("^") != -1) || (sMail.indexOf('\'') != -1) || (sMail.indexOf("~") != -1) || (sMail.indexOf("´") != -1) || ((sMail.toLowerCase()).indexOf("ç") != -1) || ((sMail.toLowerCase()).indexOf("á") != -1) || ((sMail.toLowerCase()).indexOf("ã") != -1) || ((sMail.toLowerCase()).indexOf("â") != -1) || ((sMail.toLowerCase()).indexOf("à") != -1) || ((sMail.toLowerCase()).indexOf("é") != -1) || ((sMail.toLowerCase()).indexOf("õ") != -1) || ((sMail.toLowerCase()).indexOf("ó") != -1) || ((sMail.toLowerCase()).indexOf("ô") != -1) || ((sMail.toLowerCase()).indexOf("í") != -1) || ((sMail.toLowerCase()).indexOf("ú") != -1))
      return false;     
    setColor(oField, sColorGood);
    return true;
  }
  setColor(oField, sColorBad);
  return false;
}

//+++++++++++++   VERIFICA_DATA   +++++++++++++++     
/*recebe um obj e verifica se uma data é válida no formato dd/mm/aaaa, retornando true ou false*/
function verifica_data(obj)
{ 
    var dia=0;
    var mes=0;
    var ano=0;
    var sColorBad  = '#d1d9e0';  
  var sColorGood = 'white';
    if((obj.value.length >=8) && (obj.value.length <=10))
      {
            
       if((obj.value.charAt(1)=="/") && (obj.value.charAt(3)=="/") && (obj.value.length ==8))
             {     
           VerForma = true;
         if (    cadeia_numerica(obj.value.substring(0,1))   ) 
        { dia = obj.value.substring(0,1);
          VerNum1 = true;
        }         
      else 
        { dia = 0;
          VerNum1 = false;
        } 
      if (cadeia_numerica(obj.value.substring(2,3))  ) 
        {   mes = obj.value.substring(2,3) ;
          VerNum2 = true;
        }
      else
        { mes = 0; 
          VerNum2 = false;
        }
      if (cadeia_numerica(obj.value.substring(4,8))   ) 
        { ano = obj.value.substring(4,8);
          VerNum3 = true;
        }
      else
        { ano = 0; 
          VerNum3 = false;      
        }
             
         
         }
       else if((obj.value.charAt(2)=="/") && (obj.value.charAt(4)=="/") && (obj.value.length ==9))
       {
           if (    cadeia_numerica(obj.value.substring(0,2))   ) 
          { dia = obj.value.substring(0,2);
            VerNum1 = true;
          }         
        else 
          { dia = 0;
            VerNum1 = false;
          } 
        if (cadeia_numerica(obj.value.substring(3,4))  ) 
          {   mes = obj.value.substring(3,4) ;
            VerNum2 = true;
          }
        else
          { mes = 0; 
            VerNum2 = false;
          }
        if (cadeia_numerica(obj.value.substring(5,9))   ) 
          { ano = obj.value.substring(5,9);
            VerNum3 = true;
          }
        else
          { ano = 0; 
            VerNum3 = false;      
          }
          VerForma = true;
       }
       else if((obj.value.charAt(1)=="/") && (obj.value.charAt(4)=="/") && (obj.value.length ==9))
       {
       if (    cadeia_numerica(obj.value.substring(0,1))   ) 
          { dia = obj.value.substring(0,1);
            VerNum1 = true;
          }         
        else 
          { dia = 0;
            VerNum1 = false;
          } 
        if (cadeia_numerica(obj.value.substring(2,4))  ) 
          {   mes = obj.value.substring(2,4) ;
            VerNum2 = true;
          }
        else
          { mes = 0; 
            VerNum2 = false;
          }
        if (cadeia_numerica(obj.value.substring(5,9))   ) 
          { ano = obj.value.substring(5,9);
            VerNum3 = true;
          }
        else
          { ano = 0; 
            VerNum3 = false;      
          }
             
           VerForma = true;
       }     
       else if ((obj.value.charAt(2)=="/") && (obj.value.charAt(5)=="/") && (obj.value.length ==10))
       {
          if (    cadeia_numerica(obj.value.substring(0,2))   ) 
          { dia = obj.value.substring(0,2);
            VerNum1 = true;
          }         
        else 
          { dia = 0;
            VerNum1 = false;
          } 
        if (cadeia_numerica(obj.value.substring(3,5))  ) 
          {   mes = obj.value.substring(3,5) ;
            VerNum2 = true;
          }
        else
          { mes = 0; 
            VerNum2 = false;
          }
        if (cadeia_numerica(obj.value.substring(6,10))   ) 
          { ano = obj.value.substring(6,10);
            VerNum3 = true;
          }
        else
          { ano = 0; 
            VerNum3 = false;      
          }
             
           VerForma = true;
               
       }
       else
           VerForma = false;               
               
       
      }
  else
      VerForma = false;
  
  if (  ((mes==1) || (mes==3) || (mes==5) || (mes==7) || (mes==8) || (mes==10) || (mes==12))  && ((dia >=1) && (dia<=31))  )
    {  VerMes1 = true;
    }
  else 
    { VerMes1 = false;
    }
  if (    ((mes==4) || (mes==6) || (mes==9) || (mes==11))  &&  ((dia>=1) && (dia<=30))     )
    { VerMes2 = true;
    }
  else
    { VerMes2 = false;
    }
  if ( (mes==2) && (dia>=1) && (dia<=28) )
    { VerMes3 = true;
    }
  else
    { VerMes3 = false;
    }
  if (   (mes==2) && (dia==29) && ((ano %4) == 0)    ) 
    { VerMes4 = true;
    }
  else
    { VerMes4 = false;  
    }
  if ((ano>=1922) && (ano<=2079))
    { VerAno = true; 
    }
  else
    { VerAno = false;
    } 
  if (   (VerForma) && (VerAno) && (VerNum1) && (VerNum2) && (VerNum3)  &&  ( (VerMes1) || (VerMes2) || (VerMes3) || (VerMes4) )    )
    { 
      setColor(obj, sColorGood);
      return true; 
    }
  else 
    { 
    setColor(obj, sColorBad);
    return false;
    }
}
//+++++++++++++++++++++++++++++++++++++++++++++++++++++


function isValidDate(oField, sType)
{
  var sColorBad  = '#d1d9e0';  
  var sColorGood = 'white';
  var sValue     = new String(oField.value);
  var iValue     = parseInt(sValue);
  var reDay      = /^\d{1,2}$/;
  var reMonth    = /^\d{1,2}$/;
  var reYear     = /^\d{4}$/;
  
  switch (sType.toLowerCase())
  {
    case 'd':
    {
      if ((sValue.search(reDay) != -1) && (iValue >= 1 && iValue <= 31))
      {
        setColor(oField, sColorGood);
        return true;
      }     
      setColor(oField, sColorBad);
      return false;     
      break;
    }
    
    case 'm':
    {
      if ((sValue.search(reMonth) != -1) && (iValue >= 1 && iValue <= 12))
      {
        setColor (oField, sColorGood);
        return true;
      }
      setColor (oField, sColorBad);
      return false;     
      break;
    }
    
    case 'a':
    case 'y':
    {
      if (((sValue.search(reYear) != -1)  && (iValue >= 1900)) || ((sValue.length == 2) && (iValue >= 90)))
      {
        setColor (oField, sColorGood);
        return true;
      }
      setColor (oField, sColorBad);
      return false;     
      break;
    }
  }
}

function setColor(oField, sColor)
{
  if (oField.style)
  {
    oField.style.backgroundColor = sColor;
  }
}

function isNull(oField)
{

  var sColorBad  = '#d1d9e0';  
  var sColorGood = 'white'; 
  
  if (Trim(oField.value) == '')
  {
          setColor(oField, sColorBad);                  
          return true;
  }
  
  setColor(oField, sColorGood);
  return false;
}

/*****
Verifica a validade da data
Se diautil=1 verifica se é dia útil senão não verifica dia útil
Caso verifique dia útil
*****/
function isDate(objeto,verdiautil,feriados,iniativ)
{ 
  VarArray=objeto.value.split("/");
  TamanhoArray=VarArray.length;
  if (TamanhoArray!=3)  
  {
    alert("A data deve estar no formato dd/mm/aaaa!");
    objeto.focus();
    return false;
  }
  if ((VarArray[0].length!=2)||(VarArray[1].length!=2)||(VarArray[2].length!=4))
  {
    alert("A data deve estar no formato dd/mm/aaaa!");
    objeto.focus();
    return false; 
  }

  msg = "A data é inválida!";
  if (isNaN(VarArray[0]) || isNaN(VarArray[1]) || isNaN(VarArray[2]))
  {
    alert(msg);
    objeto.focus();
    return false; 
  }
  
  if (VarArray[2] % 4 == 0) {bisexto=true;} else {bisexto=false;} 
  if (VarArray[1] > 12) {alert(msg);objeto.focus();return false;} 
  if (VarArray[1]==2) {
    if (bisexto==true) {
      if (VarArray[0] > 29) {alert(msg);objeto.focus();return false;}}
    else {
      if (VarArray[0] > 28) {alert(msg);objeto.focus();return false;}}
  }
  else if (VarArray[1]==4||VarArray[1]==6||VarArray[1]==9||VarArray[1]==11) {
    if (VarArray[0] > 30) {alert(msg);objeto.focus();return false;}} 
  else {
    if (VarArray[0] > 31) {alert(msg);objeto.focus();return false;}}
  
  if (iniativ != '')
  {
    if (VarArray[2] + VarArray[1] + VarArray[0] < iniativ) 
    {
      alert('A data de vigência não poderá ser menor que a data de início da atividade!');
      objeto.focus();
      return false;
    } 
  }
  
  var hoje = new Date();
  var dia = new Date();
  dia.setYear(VarArray[2]);
  dia.setMonth(VarArray[1]-1);
  dia.setDate(VarArray[0]);

  if (dia > hoje)
  {
    alert('A data de vigência não poderá ser maior que a data de hoje!');
    objeto.focus();
    return false;
  }

  if (verdiautil == '1') 
  {
  var diasemana = dia.getDay();
  if (diasemana == 0) 
  {
    alert('A data ' + objeto.value + ' é um Domingo!');
    objeto.focus();
    return false;
  }
  if (diasemana == 6) 
  {
    alert('A data ' + objeto.value + ' é um Sábado!');
    objeto.focus();
    return false;
  }     
  if (diasemana != 0 && diasemana != 6) 
  {
    if (feriados.length > 0)
    {
      for (i=0; i< feriados.length; i++)
      {
        if (objeto.value == feriados[i]) 
        {
        alert('A data ' + objeto.value + ' é um Feriado!');
        objeto.focus();
        return false;
        break;
        }
      }
    }
  }
  }
}

/*****
Esta rotina checa numeros, importante, 
caso seja valor inteiro e mimobrigatorio seja 1,
obriga digitar no minimo o valor de decimal.
aceita_null=0 ou 1
aceita_zero=0 ou 1
******/
function isNumero(objeto,inteiro,decimal,faixai,faixaf){

  if (objeto.value=="0") {return true;}
  
  if (objeto.value.indexOf(".")>-1){
    alert("O separador deve ser a vírgula!");
    objeto.focus();
    return false;   
  }
  VarArray=objeto.value.split(",");
  TamanhoArray=VarArray.length;
  if (TamanhoArray>2){
    alert("Digite somente um separador decimal!");
    objeto.focus();
    return false; 
  }else if(TamanhoArray==2){
      if (isNaN(VarArray[0]) || isNaN(VarArray[1])){
        alert("O valor deve ser numérico!");
        objeto.focus();
        return false;
      }else{
        if (VarArray[0] < 0 || objeto.value.indexOf("-")>-1){
          alert("O valor não pode ser negativo!");
          objeto.focus();
          return false;       
        }else{
          if ((VarArray[0].length>inteiro) || (VarArray[1].length>decimal)){
            alert("O valor deve possuir " + inteiro + " inteiros e " + decimal + " decimais!");
            objeto.focus();
            return false;       
          }else{
            if (((VarArray[0] < faixai)||(VarArray[0] > faixaf)||(VarArray[0]==faixaf&&VarArray[1]>0))&&(faixai != faixaf)){
              alert("O valor deve estar entre " + faixai + " e " + faixaf + "!");
              objeto.focus();
              return false;       
            }else{
              return true;
            }
          }
        }
      }
  }else{
      if (isNaN(objeto.value)){
        alert("O valor deve ser numérico!");
        objeto.focus();
        return false;
      }else{
        if (objeto.value < 0 || objeto.value.indexOf("-")>-1){
          alert("O valor não pode ser negativo!");
          objeto.focus();
          return false;       
        }else{
          if ((objeto.value.length>inteiro)){
            alert("O valor deve possuir " + inteiro + " caracteres inteiros no máximo!");
            objeto.focus();
            return false;
          }else{
            if (((objeto.value < faixai)||(objeto.value > faixaf))&&(faixai != faixaf)){
              alert("O valor deve estar entre " + faixai + " e " + faixaf + "!");
              objeto.focus();
              return false;       
            }else{
              return true;
            }
          }
        }
      }
  }
}

function writeError(sTexto)
{
  var sOutput = '';
  
  sOutput += '<table border="0">';
  sOutput += '<tr><td align="left">';
  sOutput += '<span class="erro">';
  sOutput += sTexto;
  sOutput += '</span>';
  sOutput += '</td></tr>';
  sOutput += '</table>';
  
  document.all['MensagemErro'].innerHTML = sOutput;
}


function isValidCNPJ(CNPJ)
{
  var sColorBad  = '#d1d9e0';  
  var sColorGood = 'white';
    
  var i, j, k, Soma, valor;
        
        valor = new String(CNPJ.value);
//alert(valor);        
        valor = valor.replace(/([^0-9])/, '');
//alert(valor);        
        valor = valor.replace(/-/, '');
//alert(valor);        
        if (valor.length != 14 || valor == '00000000000000')
        {     
          setColor(CNPJ, sColorBad);
          return false;
        }
    
        k = 0;
        while (k <= 1)
        {
        
        Soma = 0;
        
        j = 5 + k;
        
        for (i=0; i <= 11+k; i++)
        {
          Soma += parseInt(valor.charAt(i),10)*j;
        
          if (j != 2)
          {
            j--;
          }
          else
          {
            j = 9;
          }
         }
        
         Soma = 11 - Soma%11;
        
         if (Soma >= 10)
         {
          Soma = 0;
         }
         
         if (Soma != parseInt(valor.charAt(12+k)))
         {
            setColor(CNPJ, sColorBad);
          return false;
         }
         
         k++;
      }
    setColor(CNPJ, sColorGood);
    return true;

}
   
function MascaraCNPJ(CNPJ) 
{
      for (x=0; x<=CNPJ.value.length-1; x++)
      {
        if ((x != 2) && (x != 6) && (x != 10) && (x != 15) && (isNaN(CNPJ.value.substring(x,x+1))))
        {
      CNPJ.value = CNPJ.value.substring(0, x);
      
          CNPJ.focus();
          
          break;
        }

      if ((CNPJ.value.length > 1) && (CNPJ.value.length < 3))
      {
        CNPJ.value = CNPJ.value + ".";
      }

      if ((CNPJ.value.length > 5) &&  (CNPJ.value.length < 7))
      {
        CNPJ.value = CNPJ.value + ".";
      }

      if ((CNPJ.value.length > 9) &&  (CNPJ.value.length < 11))
      {
        CNPJ.value = CNPJ.value + "/";
      }

      if ((CNPJ.value.length > 14) &&  (CNPJ.value.length < 16))
      {
        CNPJ.value = CNPJ.value + "-";
      }
    }

}

//+++++++++++++++ CADEIA_NUMERICA   +++++++++++++
/*recebe uma string, verifica-se se essa string só contém números
  false = não é uma cadeia númerica
  true  = é uma cadeia númerica
*/
  
function cadeia_numerica(str)
{ 
    var tam = str.length;
  var nome = str;
    var i = 0;
      
   for(; i < tam ; i++)
   {  caracter = nome.substring(i,i+1);   //charAt(i);
    if (caracter < "0" || caracter > "9")
    {   i = tam + 1000;
      return false;
    }
   }
   return true;
} 
//+++++++++++++++++++++++++++++++++++++++++++++++++++++

/*===============================================================
                Valida Inscrição Via Digitação
================================================================*/
function sendInscricao(formulario,valida_endereco,codatuacao,dataatuacao,codsituacao,cargo,hoje,ProfCertificado, Participante)
{
  
  var sMensagemErro = '';

  //Valida o CPF
  if (isNull(document.formulario.cpf) == true) 
  {
    sMensagemErro += 'O campo <b>CPF</b> é de preenchimento obrigatório.<br>';
  }
  else
  {
    if (verificaCPF2(document.formulario.cpf.value) == false) 
    {
      sMensagemErro += 'O campo <b>CPF</b> contém um código inválido.<br>';
      setColor(document.formulario.cpf, '#d1d9e0');
    }else{
      setColor(document.formulario.cpf, '#FFFFFF');
    }
  }

  //Valida o Nome
  if (isNull(document.formulario.nome) == true){
    sMensagemErro += 'O campo <b>Nome</b> é de preenchimento obrigatório.<br>';
  }else{
  
    var achou;
  
    lblVerifica:
    for (var i=0; i<document.formulario.nome.value.length; i++) { 
      achou = false;
      if ((isNaN(document.formulario.nome.value.charAt(i)) == false) && (document.formulario.nome.value.charAt(i) != " ")){
        achou = true;
        break lblVerifica;
      }
    }
    
    if (achou == true){
      setColor(document.formulario.nome, '#d1d9e0')
      sMensagemErro += 'O campo <b>Nome</b> não deve conter nenhum caracter númerico.<br>'; 
    }
    
    //Verifica se o nome possui, pelo menos, 2 "palavras"
    var nome;
    nome = document.formulario.nome;

    if ((nome.value.indexOf(" ") == (nome.value.length-1)) || (nome.value.indexOf(" ") == -1)) {
        sMensagemErro += 'O campo <b>NOME DO INSCRITO</b> deve ser preenchido com nome e sobrenome.<br>';
        document.formulario.nome.style.backgroundColor = '#d1d9e0';
    }
    
    var nome = document.formulario.nome
    /*/Verifica se exstem caracteres especiais no campo de NOME
    if ((nome.value.indexOf(",") != -1) && (nome.value.indexOf(";") != -1) && (nome.value.indexOf(":") != -1) && (nome.value.indexOf("/") != -1) && (nome.value.indexOf("?") != -1) && (nome.value.indexOf("\") != -1) && (nome.value.indexOf("|") != -1) && (nome.value.indexOf("<") != -1)  && (nome.value.indexOf(">") != -1) && (nome.value.indexOf("^") != -1) && (nome.value.indexOf("~") != -1) && (nome.value.indexOf("]") != -1) && (nome.value.indexOf("}") != -1) && (nome.value.indexOf("[") != -1) && (nome.value.indexOf("{") != -1) && (nome.value.indexOf("´") != -1) && (nome.value.indexOf("`") != -1) && (nome.value.indexOf("'") != -1) && (nome.value.indexOf("!") != -1) && (nome.value.indexOf("@") != -1) && (nome.value.indexOf("#") != -1) && (nome.value.indexOf("$") != -1) && (nome.value.indexOf("%") != -1) && (nome.value.indexOf("¨") != -1) && (nome.value.indexOf("&") != -1) && (nome.value.indexOf("*") != -1) && (nome.value.indexOf("(") != -1) && (nome.value.indexOf(")") != -1) && (nome.value.indexOf("-") != -1) && (nome.value.indexOf("_") != -1) && (nome.value.indexOf("=") != -1) && (nome.value.indexOf("+") != -1)){
        sMensagemErro += 'O campo <b>NOME DO INSCRITO</b> deve ser preenchido somente com letras.<br>';
        document.formulario.nome.style.backgroundColor = '#d1d9e0';
    }*/
  }
  
  //Valida RG
  if (isNull(document.formulario.rg) == true){
    sMensagemErro += 'O campo <b>RG</b> é de preenchimento obrigatório.<br>'; 
  }
  
  //Valida Orgão Expedidor
  if (isNull(document.formulario.org_expedidor) == true){
    sMensagemErro += 'O campo <b>Orgão Expedidor</b> é de preenchimento obrigatório.<br>';
  }else if (isNaN(document.formulario.org_expedidor.value) == false) {
    sMensagemErro += 'O campo <b>Orgão Expedidor</b> deve conter letras.<br>';
    setColor(document.formulario.org_expedidor, '#d1d9e0');
  }

  //Valida Estado de emissão do RG
  if ((document.formulario.ufemissaodoc.selectedIndex) == '' ){
    sMensagemErro += 'O campo <b>UF emissão do RG</b> é de preenchimento obrigatório.<br>';
    setColor(document.formulario.ufemissaodoc, '#d1d9e0');
  }else{
    setColor(document.formulario.ufemissaodoc, 'white');
  }

  //Valida E-Mail
  
  if (isNull(document.formulario.email) == true ){
    sMensagemErro += 'O campo <b>Email</b> é de preenchimento obrigatório.<br>';
    setColor(document.formulario.email, '#d1d9e0');
  }else{
    setColor(document.formulario.email, 'white');
  }
  
  if (document.formulario.email.value != ''){
    if (isValidMail(document.formulario.email) == false)
      sMensagemErro += 'O campo <b>E-Mail</b> não está preenchido corretamente.<BR>';
  }
  
  //Valida Sexo
  if ((document.formulario.sexo.selectedIndex) == '' ){
    sMensagemErro += 'O campo <b>Sexo</b> é de preenchimento obrigatório.<br>';
    document.formulario.sexo.style.backgroundColor = '#d1d9e0';
  }else{
    document.formulario.sexo.style.backgroundColor = 'white';
  }

  //Valida Data de Nascimento
  var vetordata = new Array(3);
  vetordata = document.formulario.dtnascimento.value.split('/',3);
  var objdata = new Date();
  if (isNull(document.formulario.dtnascimento) == true)
  {
    sMensagemErro += 'O campo <b>Data de Nascimento</b> é de preenchimento obrigatório.<br>';
  }else{
    if (verifica_data(document.formulario.dtnascimento) == false){
      sMensagemErro += 'O campo <b>Data de Nascimento</b> não está preenchido corretamente.<br>';
        }
    else if (parseInt(objdata.getFullYear()) -(parseInt(vetordata[2])) < 16){
      sMensagemErro += 'Não é aceita inscrição para menores de 16 anos.<br>'; 
    } 
  }
  
  //Valida Categoria
  if ((document.formulario.categoria.selectedIndex) == '' ){
    sMensagemErro += 'O campo <b>Categoria</b> é de preenchimento obrigatório.<br>';
    document.formulario.categoria.style.backgroundColor = '#d1d9e0';
    
  }else{
      document.formulario.categoria.style.backgroundColor = 'white';
    
      //Valida Relação Instituição
      if ((document.formulario.categoria.selectedIndex) == 3 && document.formulario.categoria.value == 7){
        if (document.formulario.instrel.value == ''){
          sMensagemErro += 'O campo <b>Instituição Relacionada</b> é de preenchimento obrigatório.<br>';
          document.formulario.instrel.style.backgroundColor = '#d1d9e0';
        }else{
          document.formulario.instrel.style.backgroundColor = 'white';
        }
            
      } 
  }
  
  //Valida Deficiência
  if (document.formulario.deficiencia[0].checked == true){
    if (isNull(document.formulario.descdeficiencia) == true){
      sMensagemErro += 'O <b>Tipo de Deficiência</b> deve ser informado.<br>';
    } else if (isNaN(document.formulario.descdeficiencia.value) == false){
      sMensagemErro += 'O campo <b>Tipo de Deficiência</b> deve conter letras.<br>';
      setColor(document.formulario.descdeficiencia, '#d1d9e0');
    }
  }

  
  //Valida Local da Prova
  if ((document.formulario.localprova.selectedIndex) == '' ){
    sMensagemErro += 'O campo <b>Local da Prova</b> é de preenchimento obrigatório.<br>';
    setColor(document.formulario.localprova, '#d1d9e0');
  }else{
    document.formulario.localprova.style.backgroundColor = 'white';
  }

  if (valida_endereco == 'sim') {
  
  
    //Valida Endereço
    if (isNull(document.formulario.endereco) == true)
      sMensagemErro += 'O campo <b>Endereço</b> é de preenchimento obrigatório.<br>';

    /*if (document.formulario.endereco.value.length < 3){
        sMensagemErro += 'O campo <b>Endereço</b> deve possuir no mínimo 3 dígitos.<br>';
          setColor(document.formulario.endereco, '#d1d9e0');
    }else*/ if (isNaN(document.formulario.endereco.value) == false){
      sMensagemErro += 'O campo <b>Endereço</b> deve ser preenchido com letras.<br>';
      setColor(document.formulario.endereco, '#d1d9e0');
    }else{  
        setColor(document.formulario.endereco, 'white');
    }

    //Valida Número do Endereço
    if (isNull(document.formulario.numendereco) == true){
      sMensagemErro += 'O campo <b>Número</b> é de preenchimento obrigatório.<br>';
    }else if (isNaN(document.formulario.numendereco.value) == true){
        sMensagemErro += 'O campo <b>Número</b> deve conter apenas números.<br>';
        setColor(document.formulario.numendereco, '#d1d9e0');
    }
      
    //Valida Bairro
    if (isNull(document.formulario.bairro) == true){
        sMensagemErro += 'O campo <b>Bairro</b> é de preenchimento obrigatório.<br>';
    }else if (isNaN(document.formulario.bairro.value) == false){
      sMensagemErro += 'O campo <b>Bairro</b> deve ser preenchido com letras.<br>';
      setColor(document.formulario.bairro, '#d1d9e0');
    }

    //Valida Cidade
    if (isNull(document.formulario.cidade) == true){
        sMensagemErro += 'O campo <b>Cidade</b> é de preenchimento obrigatório.<br>';
    }else if (isNaN(document.formulario.cidade.value) == false){
      sMensagemErro += 'O campo <b>Cidade</b> deve ser preenchido com letras.<br>';
      setColor(document.formulario.cidade, '#d1d9e0');
    }

    //Valida CEP
    if (isNull(document.formulario.cep) == true){
        sMensagemErro += 'O campo <b>CEP</b> é de preenchimento obrigatório.<br>';
    }else if (isNaN(document.formulario.cep.value) == true){
        sMensagemErro += 'O campo <b>CEP</b> deve conter apenas números.<br>';
        setColor(document.formulario.cep, '#d1d9e0');
    }
  
    if (document.formulario.cep.value.length != 8){
        sMensagemErro += 'O campo <b>CEP</b> deve possuir 8 dígitos.<br>';
          setColor(document.formulario.cep, '#d1d9e0');                   
    }

    //Valida Estado
    if ((document.formulario.estado.selectedIndex) == '' ){
      sMensagemErro += 'O campo <b>UF de correspondência</b> é de preenchimento obrigatório.<br>';
      setColor(document.formulario.estado, '#d1d9e0');
    }else{
      setColor(document.formulario.estado, '#ffffff');
    }

    //Valida DDD Tel. Residencial - apenas numeros 
    if (isNaN(document.formulario.dddtelres.value)){
        sMensagemErro += 'O campo <b>DDD Tel. Residencial</b> deve conter apenas números.<br>';
        setColor(document.formulario.dddtelres, '#d1d9e0');
    }else{
      setColor(document.formulario.dddtelres, 'white');
    }
    
    //Valida DDD Tel. Residencial - obrigatorio
    if (isNull(document.formulario.dddtelres) == true){
        sMensagemErro += 'O campo <b>DDD Tel. Residencial</b> é de preenchimento obrigatório.<br>';
        setColor(document.formulario.dddtelres, '#d1d9e0');
    }

    //Valida Tel. Residencial - apenas numeros
    if (isNaN(document.formulario.telres.value)){
        sMensagemErro += 'O campo <b>Tel. Residencial</b> deve conter apenas números.<br>';
        setColor(document.formulario.telres, '#d1d9e0');
    }else{
      setColor(document.formulario.telres, 'white');
    }

    //Valida Tel. Residencial - obrigatorio
    if (isNull(document.formulario.telres) == true){
        sMensagemErro += 'O campo <b>Tel. Residencial</b> é de preenchimento obrigatório.<br>';
        setColor(document.formulario.telres, '#d1d9e0');
    }
      
    //Tratar Telefone e DDD Comercial
        
    //Valida DDD Tel. Comercial - apenas numeros
    if (isNaN(document.formulario.dddtelcom.value)){
        sMensagemErro += 'O campo <b>DDD Tel. Comercial</b> deve conter apenas números.<br>';
        setColor(document.formulario.dddtelcom, '#d1d9e0');
    }

    //Valida Tel. Comercial - apenas numeros
    if (isNaN(document.formulario.telcom.value)){
        sMensagemErro += 'O campo <b>Tel. Comercial</b> deve conter apenas números.<br>';
        setColor(document.formulario.telcom, '#d1d9e0');
    }

    //Valida Ramal
    if (isNaN(document.formulario.ramal.value) == true){
      sMensagemErro += 'O campo <b>Ramal</b> deve ser preenchido somente com números.<br>'; 
      setColor(document.formulario.ramal, '#d1d9e0');
    }else{
      setColor(document.formulario.ramal, 'white');
    }

    //Valida DDD Tel. Celular
    if (isNaN(document.formulario.dddtelcelular.value)){
        sMensagemErro += 'O campo <b>DDD Celular</b> deve conter apenas números.<br>';
        setColor(document.formulario.dddtelcelular, '#d1d9e0');
    }else{
      setColor(document.formulario.dddtelcelular, 'white');
    }

    //Valida Tel. Celular
    if (isNaN(document.formulario.telcelular.value)){
        sMensagemErro += 'O campo <b>Celular</b> deve conter apenas números.<br>';
        setColor(document.formulario.telcelular, '#d1d9e0');
    }else{
      setColor(document.formulario.telcelular, 'white');
    }
    
  
  }

  if (ProfCertificado != 'sim')
  {
  
    //Area Atuação
    if (document.formulario.codatuacao.selectedIndex == 0) {
      sMensagemErro += 'O campo <b>Área de Atuação</b> é de preenchimento obrigatório.<br>';
      setColor(document.formulario.codatuacao, '#d1d9e0');
    }else{
      setColor(document.formulario.codatuacao, 'white');
    }
      
    //Data início na área
    var dataini;
    var datahoje;
    var vetordataini = new Array(3);
    vetordataini = document.formulario.data_atuacao.value.split('/',3);
    var vetordatahoje = new Array(3);
    vetordatahoje = hoje.split('/',3);
    dataini = parseInt(vetordataini[2] + vetordataini[1] + vetordataini[0]);
    datahoje = parseInt(vetordatahoje[2] + vetordatahoje[1] + vetordatahoje[0]);
    if (isNull(document.formulario.data_atuacao) == true)
    {
      sMensagemErro += 'O campo <b>Data de Início na Área</b> é de preenchimento obrigatório.<br>';
    }else{
      if (verifica_data(document.formulario.data_atuacao) == false)
        sMensagemErro += 'O campo <b>Data de início na área</b> não está preenchido corretamente.<br>';
      else if (dataini > datahoje)
          sMensagemErro += 'O campo <b>Data de início na área</b> não poderá ter conteúdo posterior a data de hoje.<br>'; 
    }   
      
    //Motivo da entrada na área
    if (document.formulario.codsituacao.selectedIndex == 0) {
      sMensagemErro += 'O campo <b>Motivo da entrada na área</b> é de preenchimento obrigatório.<br>';
      setColor(document.formulario.codsituacao, '#d1d9e0');
    }else{
      setColor(document.formulario.codsituacao, 'white');
    }
  
    //Cargo           
    
     if (isNull(document.formulario.cargo) == false){
         if (isNaN(document.formulario.cargo.value) == false){
            sMensagemErro += 'O campo <b>Cargo</b> deve conter apenas letras.<br>';
            setColor(document.formulario.cargo, '#d1d9e0');
        }else{
          setColor(document.formulario.cargo, 'white');
        }
    }     
     else{
        if (Participante == 'P'){ 
          sMensagemErro += 'O campo <b>Cargo</b> é de preenchimento obrigatório.<br>';
          setColor(document.formulario.cargo, '#d1d9e0');}
        else
          setColor(document.formulario.cargo, 'white');
     }    
              
  }
  
  if (sMensagemErro == '')
  {
    return true;
  }
  else
  {
    writeError(sMensagemErro);
    document.formulario.topo.focus();
    return false;
  }
}

/*===============================================================
       Valida Alteração de Dados cadastrais de Prof Certificados
================================================================*/
function sendCertificado(formulario,valida_endereco)
{

  var sMensagemErro = '';

  //Valida o Nome
  if (isNull(document.formulario.nome) == true){
    sMensagemErro += 'O campo <b>Nome</b> é de preenchimento obrigatório.<br>';
  }else{
  
    var achou;
  
    lblVerifica:
    for (var i=0; i<document.formulario.nome.value.length; i++) { 
      achou = false;
      if ((isNaN(document.formulario.nome.value.charAt(i)) == false) && (document.formulario.nome.value.charAt(i) != " ")){
        achou = true;
        break lblVerifica;
      }
    }
    
    if (achou == true){
      setColor(document.formulario.nome, '#d1d9e0')
      sMensagemErro += 'O campo <b>Nome</b> não deve conter nenhum caracter númerico.<br>'; 
    }
    
    //Verifica se o nome possui, pelo menos, 2 "palavras"
    var nome;
    nome = document.formulario.nome;

    if ((nome.value.indexOf(" ") == (nome.value.length-1)) || (nome.value.indexOf(" ") == -1)) {
        sMensagemErro += 'O campo <b>NOME DO PROFISSIONAL</b> deve ser preenchido com nome e sobrenome.<br>';
        document.formulario.nome.style.backgroundColor = '#d1d9e0';
    }
    
    var nome = document.formulario.nome
    /*/Verifica se exstem caracteres especiais no campo de NOME
    if ((nome.value.indexOf(",") != -1) && (nome.value.indexOf(";") != -1) && (nome.value.indexOf(":") != -1) && (nome.value.indexOf("/") != -1) && (nome.value.indexOf("?") != -1) && (nome.value.indexOf("\") != -1) && (nome.value.indexOf("|") != -1) && (nome.value.indexOf("<") != -1)  && (nome.value.indexOf(">") != -1) && (nome.value.indexOf("^") != -1) && (nome.value.indexOf("~") != -1) && (nome.value.indexOf("]") != -1) && (nome.value.indexOf("}") != -1) && (nome.value.indexOf("[") != -1) && (nome.value.indexOf("{") != -1) && (nome.value.indexOf("´") != -1) && (nome.value.indexOf("`") != -1) && (nome.value.indexOf("'") != -1) && (nome.value.indexOf("!") != -1) && (nome.value.indexOf("@") != -1) && (nome.value.indexOf("#") != -1) && (nome.value.indexOf("$") != -1) && (nome.value.indexOf("%") != -1) && (nome.value.indexOf("¨") != -1) && (nome.value.indexOf("&") != -1) && (nome.value.indexOf("*") != -1) && (nome.value.indexOf("(") != -1) && (nome.value.indexOf(")") != -1) && (nome.value.indexOf("-") != -1) && (nome.value.indexOf("_") != -1) && (nome.value.indexOf("=") != -1) && (nome.value.indexOf("+") != -1)){
        sMensagemErro += 'O campo <b>NOME DO PROFISSIONAL</b> deve ser preenchido somente com letras.<br>';
        document.formulario.nome.style.backgroundColor = '#d1d9e0';
    }*/
  }
  
  //Valida o CPF
  if (isNull(document.formulario.cpf) == true) 
  {
    sMensagemErro += 'O campo <b>CPF</b> é de preenchimento obrigatório.<br>';
  }
  if (document.formulario.cpf.value != '')
    if (verificaCPF(document.formulario.cpf.value) == false) 
      sMensagemErro += 'O campo <b>CPF</b> contém um código inválido.<br>';

  //Valida RG
  if (isNull(document.formulario.rg) == true)
    sMensagemErro += 'O campo <b>RG</b> é de preenchimento obrigatório.<br>'; 
  
  //Verifica se existe pelo menos um número na string de RG
  var encontrou;
  var rg = document.formulario.rg;
  
  lblVerificacao:
  for (var i=0; i<rg.value.length; i++) { 
    encontrou = false;
    if (isNaN(rg.value.charAt(i)) == false){
      encontrou = true;
      break lblVerificacao;
    }
  }
  
  if (encontrou == false){
    setColor(document.formulario.rg, '#d1d9e0')
    sMensagemErro += 'O campo <b>RG</b> deve conter caracteres númericos.<br>'; 
  }

  //Valida Orgão Expedidor
  if (isNull(document.formulario.org_expedidor) == true){
    sMensagemErro += 'O campo <b>Orgão Expedidor</b> é de preenchimento obrigatório.<br>';
  }else if (isNaN(document.formulario.org_expedidor.value) == false) {
    sMensagemErro += 'O campo <b>Orgão Expedidor</b> deve conter letras.<br>';
    setColor(document.formulario.org_expedidor, '#d1d9e0');
  }

  //Valida Estado de emissão do RG
  if ((document.formulario.ufemissaodoc.selectedIndex) == '' ){
    sMensagemErro += 'O campo <b>UF emissão do RG</b> é de preenchimento obrigatório.<br>';
    setColor(document.formulario.ufemissaodoc, '#d1d9e0');
  }else{
    setColor(document.formulario.ufemissaodoc, 'white');
  }

  //Valida Deficiência
  if (document.formulario.deficiencia[0].checked == true){
    if (isNull(document.formulario.descdeficiencia) == true){
      sMensagemErro += 'O <b>Tipo de Deficiência</b> deve ser informado.<br>';
    } else if (isNaN(document.formulario.descdeficiencia.value) == false){
      sMensagemErro += 'O campo <b>Tipo de Deficiência</b> deve conter letras.<br>';
      setColor(document.formulario.descdeficiencia, '#d1d9e0');
    }
  }

  //Valida Data de Nascimento
  if (isNull(document.formulario.dtnascimento) == true)
  {
    sMensagemErro += 'O campo <b>Data de Nascimento</b> é de preenchimento obrigatório.<br>';
  }else{
    if (verifica_data(document.formulario.dtnascimento) == false)
      sMensagemErro += 'O campo <b>Data de Nascimento</b> não está preenchido corretamente.<br>';
      
    /*if (document.formulario.dtnascimento.value => '')
      sMensagemErro += '<b>Data de Nascimento</b> inválida.<br>';*/
  }
  
  //Valida Sexo
  if ((document.formulario.sexo.selectedIndex) == '' ){
    sMensagemErro += 'O campo <b>Sexo</b> é de preenchimento obrigatório.<br>';
    document.formulario.sexo.style.backgroundColor = '#d1d9e0';
  }else{
    document.formulario.sexo.style.backgroundColor = 'white';
  }
  
  //Valida E-Mail
  if (document.formulario.email.value != ''){
    if (isValidMail(document.formulario.email) == false)
      sMensagemErro += 'O campo <b>E-Mail</b> não está preenchido corretamente.<BR>';
  }
  
  
    //Valida Endereço
    if (isNull(document.formulario.endereco) == true)
      sMensagemErro += 'O campo <b>Endereço</b> é de preenchimento obrigatório.<br>';

    /*if (document.formulario.endereco.value.length < 3){
        sMensagemErro += 'O campo <b>Endereço</b> deve possuir no mínimo 3 dígitos.<br>';
          setColor(document.formulario.endereco, '#d1d9e0');
    }else*/ if (isNaN(document.formulario.endereco.value) == false){
      sMensagemErro += 'O campo <b>Endereço</b> deve ser preenchido com letras.<br>';
      setColor(document.formulario.endereco, '#d1d9e0');
    }else{  
        setColor(document.formulario.endereco, 'white');
    }

    //Valida Número do Endereço
    if (isNull(document.formulario.numendereco) == true){
      sMensagemErro += 'O campo <b>Número</b> é de preenchimento obrigatório.<br>';
    }else if (isNaN(document.formulario.numendereco.value) == true){
        sMensagemErro += 'O campo <b>Número</b> deve conter apenas números.<br>';
        setColor(document.formulario.numendereco, '#d1d9e0');
    }
      
    //Valida Bairro
    if (isNull(document.formulario.bairro) == true){
        sMensagemErro += 'O campo <b>Bairro</b> é de preenchimento obrigatório.<br>';
    }else if (isNaN(document.formulario.bairro.value) == false){
      sMensagemErro += 'O campo <b>Bairro</b> deve ser preenchido com letras.<br>';
      setColor(document.formulario.bairro, '#d1d9e0');
    }

    //Valida Cidade
    if (isNull(document.formulario.cidade) == true){
        sMensagemErro += 'O campo <b>Cidade</b> é de preenchimento obrigatório.<br>';
    }else if (isNaN(document.formulario.cidade.value) == false){
      sMensagemErro += 'O campo <b>Cidade</b> deve ser preenchido com letras.<br>';
      setColor(document.formulario.cidade, '#d1d9e0');
    }

    //Valida CEP
    if (isNull(document.formulario.cep) == true){
        sMensagemErro += 'O campo <b>CEP</b> é de preenchimento obrigatório.<br>';
    }else if (isNaN(document.formulario.cep.value) == true){
        sMensagemErro += 'O campo <b>CEP</b> deve conter apenas números.<br>';
        setColor(document.formulario.cep, '#d1d9e0');
    }
  
    if (document.formulario.cep.value.length != 8){
        sMensagemErro += 'O campo <b>CEP</b> deve possuir 8 dígitos.<br>';
          setColor(document.formulario.cep, '#d1d9e0');                   
    }

    //Valida Estado
    if ((document.formulario.estado.selectedIndex) == '' ){
      sMensagemErro += 'O campo <b>UF de correspondência</b> é de preenchimento obrigatório.<br>';
      setColor(document.formulario.estado, '#d1d9e0');
    }else{
      setColor(document.formulario.estado, '#ffffff');
    }

    //Valida DDD Tel. Residencial
    if (isNaN(document.formulario.dddtelres.value)){
        sMensagemErro += 'O campo <b>DDD Tel. Residencial</b> deve conter apenas números.<br>';
        setColor(document.formulario.dddtelres, '#d1d9e0');
    }else{
      setColor(document.formulario.dddtelres, 'white');
    }

    //Valida Tel. Residencial
    if (isNaN(document.formulario.telres.value)){
        sMensagemErro += 'O campo <b>Tel. Residencial</b> deve conter apenas números.<br>';
        setColor(document.formulario.telres, '#d1d9e0');
    }else{
      setColor(document.formulario.telres, 'white');
    }

    //Valida DDD Tel. Comercial
    if (isNull(document.formulario.dddtelcom) == true)
        sMensagemErro += 'O campo <b>DDD</b> é de preenchimento obrigatório.<br>';
  
    if (isNaN(document.formulario.dddtelcom.value)){
        sMensagemErro += 'O campo <b>DDD Tel. Comercial</b> deve conter apenas números.<br>';
        setColor(document.formulario.dddtelcom, '#d1d9e0');
    }

    //Valida Tel. Comercial
    if (isNaN(document.formulario.telcom.value)){
        sMensagemErro += 'O campo <b>Tel. Comercial</b> deve conter apenas números.<br>';
        setColor(document.formulario.telcom, '#d1d9e0');
    }else{
      setColor(document.formulario.telcom, 'white');
    }
    
    if (isNull(document.formulario.telcom) == true){
        sMensagemErro += 'O campo <b>Tel. Comercial</b> é de preenchimento obrigatório.<br>';
        setColor(document.formulario.telcom, '#d1d9e0');
    }

    //Valida Ramal
    if (isNaN(document.formulario.ramal.value) == true){
      sMensagemErro += 'O campo <b>Ramal</b> deve ser preenchido somente com números.<br>'; 
      setColor(document.formulario.ramal, '#d1d9e0');
    }else{
      setColor(document.formulario.ramal, 'white');
    }

    //Valida DDD Tel. Celular
    if (isNaN(document.formulario.dddtelcelular.value)){
        sMensagemErro += 'O campo <b>DDD Celular</b> deve conter apenas números.<br>';
        setColor(document.formulario.dddtelcelular, '#d1d9e0');
    }else{
      setColor(document.formulario.dddtelcelular, 'white');
    }

    //Valida Tel. Celular
    if (isNaN(document.formulario.telcelular.value)){
        sMensagemErro += 'O campo <b>Celular</b> deve conter apenas números.<br>';
        setColor(document.formulario.telcelular, '#d1d9e0');
    }else{
      setColor(document.formulario.telcelular, 'white');
    }
    

  
  if (sMensagemErro == '')
  {
    return true;
  }
  else
  {
    writeError(sMensagemErro);
    document.formulario.topo.focus(); 
    return false;         
  }
}

//*********************************************************
//                 VALIDA CADASTRO DE RH
//*********************************************************
function sendCadastroRH(formulario)
{

  var sMensagemErro = '';

  //Valida Nome da Instituição
  if (isNull(document.formulario.nome_instituicao) == true){
    sMensagemErro += 'O campo <b>Nome Instituição</b> é de preenchimento obrigatório.<br>';
  }else{
    if (isNaN(document.formulario.nome_instituicao.value) == false){
      sMensagemErro += 'O campo <b>Nome Instituição</b> deve conter letras.<br>';
      setColor(document.formulario.nome_instituicao, '#d1d9e0');
    }else{
      setColor(document.formulario.nome_instituicao, '#ffffff');
    }
  }
  
  //Valida o Nome Representande RH
  if (isNull(document.formulario.nome_responsavel_rh) == true){
    sMensagemErro += 'O campo <b>Nome Responsável pelo RH</b> é de preenchimento obrigatório.<br>';
  }else{
  
    var achou;
  
    lblVerificaRH:
    for (var i=0; i<document.formulario.nome_responsavel_rh.value.length; i++) { 
      achou = false;
      if ((isNaN(document.formulario.nome_responsavel_rh.value.charAt(i)) == false) && (document.formulario.nome_responsavel_rh.value.charAt(i) != " ")){
        achou = true;
        break lblVerificaRH;
      }
    }
    
    if (achou == true){
      setColor(document.formulario.nome_responsavel_rh, '#d1d9e0')
      sMensagemErro += 'O campo <b>Nome Responsável pelo RH</b> não deve conter nenhum caracter númerico.<br>'; 
    }
    
    //Verifica se o nome possui, pelo menos, 2 "palavras"
    var nome;
    nome = document.formulario.nome_responsavel_rh;

    if ((nome.value.indexOf(" ") == (nome.value.length-1)) || (nome.value.indexOf(" ") == -1)) {
        sMensagemErro += 'O campo <b>Nome Responsável pelo RH</b> deve ser preenchido com nome e sobrenome.<br>';
        setColor(nome, '#d1d9e0')
    }
  }

  //Valida o Cargo
  if (isNull(document.formulario.cargo) == true){
    sMensagemErro += 'O campo <b>Cargo</b> é de preenchimento obrigatório.<br>';
  }else{
    if (isNaN(document.formulario.cargo.value) == false){
      sMensagemErro += 'O campo <b>Cargo</b> deve conter letras.<br>';
      setColor(document.formulario.cargo, '#d1d9e0');
    }
  }

  //Valida o Sexo
  if (isNull(document.formulario.sexo) == true){
    if (document.formulario.sexo.value == ""){
      sMensagemErro += 'O campo <b>Sexo</b> é de preenchimento obrigatório.<br>';
    }
  }
  
  //Valida DDD
  if (isNull(document.formulario.dddtelefone) == true) {
    sMensagemErro += 'O campo <b>DDD</b> é de preenchimento obrigatório.<br>';
  }else if (isNaN(document.formulario.dddtelefone.value) == true){
    sMensagemErro += 'O campo <b>DDD</b> deve ser preenchido somente com números.<br>'; 
    setColor(document.formulario.dddtelefone, '#d1d9e0');  
  }else if (document.formulario.dddtelefone.value.length < 2) {
    sMensagemErro += 'O campo <b>DDD</b> deve ter 2 algarísmos.<br>'; 
    setColor(document.formulario.dddtelefone, '#d1d9e0'); 
  }

  //Valida Telefone
  if (isNull(document.formulario.telefone) == true) {
    sMensagemErro += 'O campo <b>Telefone</b> é de preenchimento obrigatório.<br>';
  }else if (isNaN(document.formulario.telefone.value) == true){
    sMensagemErro += 'O campo <b>Telefone</b> deve ser preenchido somente com números.<br>';  
    setColor(document.formulario.telefone, '#d1d9e0');  
  }else if (document.formulario.telefone.value.length < 7){
    sMensagemErro += 'O campo <b>Telefone</b> deve ter no mínimo 7 algarísmos.<br>';  
    setColor(document.formulario.telefone, '#d1d9e0');  
  }
  
  //Valida Ramal
  if (isNaN(document.formulario.ramal.value) == true){
    sMensagemErro += 'O campo <b>Ramal</b> deve ser preenchido somente com números.<br>'; 
    setColor(document.formulario.ramal, '#d1d9e0');
  }else{
    setColor(document.formulario.ramal, 'white');
  }


  //Valida E-Mail
  if (isNull(document.formulario.email) == true) {
    sMensagemErro += 'O campo <b>E-Mail</b> é de preenchimento obrigatório.<br>';
  }else if (document.formulario.email.value != ''){
    if (isValidMail(document.formulario.email) == false){
      sMensagemErro += 'O campo <b>E-Mail</b> não está preenchido corretamente.<BR>';
      setColor(document.formulario.email, '#d1d9e0');
    }
  }
  
  
  //Valida o Nome Representande RH
  if (isNull(document.formulario.diretor_responsavel) == true){
    sMensagemErro += 'O campo <b>Diretor Responsável</b> é de preenchimento obrigatório.<br>';
  }else{
  
    var nome;
    nome = document.formulario.diretor_responsavel;

    //Verifica se o nome possui, pelo menos, 2 "palavras"

    if ((nome.value.indexOf(" ") == (nome.value.length-1)) || (nome.value.indexOf(" ") == -1)) {
        sMensagemErro += 'O campo <b>Diretor Responsável</b> deve ser preenchido com nome e sobrenome.<br>';
        setColor(nome, '#d1d9e0')
    }

    //Verifica se o nome possui algum caracter numérico
    var achou;
  
    lblVerificaRH:
    for (var i=0; i<nome.value.length; i++) { 
      achou = false;
      if ((isNaN(nome.value.charAt(i)) == false) && (nome.value.charAt(i) != " ")){
        achou = true;
        break lblVerificaRH;
      }
    }
    
    if (achou == true){
      setColor(document.formulario.diretor_responsavel, '#d1d9e0')
      sMensagemErro += 'O campo <b>Diretor Responsável</b> não deve conter nenhum caracter númerico.<br>';  
    }
  }


  //Valida E-Mail do Diretor Responsável
  if (isNull(document.formulario.email_diretor_responsavel) == true) {
    sMensagemErro += 'O campo <b>E-Mail do Diretor Responsável</b> é de preenchimento obrigatório.<br>';
  }else{
    if (isValidMail(document.formulario.email_diretor_responsavel) == false){
      sMensagemErro += 'O campo <b>E-Mail do Diretor Responsável</b> não está preenchido corretamente.<BR>';
      setColor(document.formulario.email_diretor_responsavel, '#d1d9e0');
    }
  }
  
  
  
  
	//NOVOS DADOS DIRETOR RH
if (isNull(document.formulario.diretorResp_ddd) == true) {
	sMensagemErro += 'O campo <b>DDD (diretor)</b> é de preenchimento obrigatório.<br>';
} else if (isNaN(document.formulario.diretorResp_ddd.value) == true) {
	sMensagemErro += 'O campo <b>DDD (diretor)</b> deve ser preenchido somente com números.<br>'; 
}

if (isNull(document.formulario.diretorResp_telefone) == true) {
	sMensagemErro += 'O campo <b>Telefone (diretor)</b> é de preenchimento obrigatório.<br>';
} else if (isNaN(document.formulario.diretorResp_telefone.value) == true){
	sMensagemErro += 'O campo <b>Telefone (diretor)</b> deve ser preenchido somente com números.<br>';
}

if (isNaN(document.formulario.diretorResp_ramal.value) == true) {
	sMensagemErro += 'O campo <b>Ramal (diretor)</b> deve ser preenchido somente com números.<br>';
}



	//NOVOS DADOS COMPLIANCE OFFICERS
if (isNull(document.formulario.cOfficerResp_nome) == true) {
	sMensagemErro += 'O campo <b>Diretor de Compliance ou Responsável por Controles Internos</b> é de preenchimento obrigatório.<br>';
}

if (isNull(document.formulario.cOfficerResp_email) == true) {
	sMensagemErro += 'O campo <b>Email (diretor compliance ou resp. controles internos)</b> é de preenchimento obrigatório.<br>';
} else if (document.formulario.cOfficerResp_email.value != '') {
	if (isValidMail(document.formulario.cOfficerResp_email) == false){
		sMensagemErro += 'O campo <b>Email (diretor compliance ou resp. controles internos)</b> não está preenchido corretamente.<BR>';
	}
}

if (isNull(document.formulario.cOfficerResp_ddd) == true) {
	sMensagemErro += 'O campo <b>DDD (diretor compliance ou resp. controles internos)</b> é de preenchimento obrigatório.<br>';
} else if (isNaN(document.formulario.cOfficerResp_ddd.value) == true) {
	sMensagemErro += 'O campo <b>DDD (diretor compliance ou resp. controles internos)</b> deve ser preenchido somente com números.<br>'; 
}

if (isNull(document.formulario.cOfficerResp_telefone) == true) {
	sMensagemErro += 'O campo <b>Telefone (diretor compliance ou resp. controles internos)</b> é de preenchimento obrigatório.<br>';
} else if (isNaN(document.formulario.cOfficerResp_telefone.value) == true) {
	sMensagemErro += 'O campo <b>Telefone (diretor compliance ou resp. controles internos)</b> deve ser preenchido somente com números.<br>';
}

if (isNaN(document.formulario.cOfficerResp_ramal.value) == true) {
	sMensagemErro += 'O campo <b>Ramal (diretor compliance ou resp. controles internos)</b> deve ser preenchido somente com números.<br>'; 
}




if (isNull(document.formulario.cOfficerSup_nome) == true) {
	sMensagemErro += 'O campo <b>Diretor Suplente de Compliance</b> é de preenchimento obrigatório.<br>';
}

if (isNull(document.formulario.cOfficerSup_email) == true) {
	sMensagemErro += 'O campo <b>Email (diretor suplente de compliance)</b> é de preenchimento obrigatório.<br>';
} else if (document.formulario.cOfficerSup_email.value != '') {
	if (isValidMail(document.formulario.cOfficerSup_email) == false) {
		sMensagemErro += 'O campo <b>Email (diretor suplente de compliance)</b> não está preenchido corretamente.<BR>';
	}
}

if (isNull(document.formulario.cOfficerSup_ddd) == true) {
	sMensagemErro += 'O campo <b>DDD (diretor suplente de compliance)</b> é de preenchimento obrigatório.<br>';
} else if (isNaN(document.formulario.cOfficerSup_ddd.value) == true) {
	sMensagemErro += 'O campo <b>DDD (diretor suplente de compliance)</b> deve ser preenchido somente com números.<br>'; 
}

if (isNull(document.formulario.cOfficerSup_telefone) == true) {
	sMensagemErro += 'O campo <b>Telefone (diretor suplente de compliance)</b> é de preenchimento obrigatório.<br>';
} else if (isNaN(document.formulario.cOfficerSup_telefone.value) == true) {
	sMensagemErro += 'O campo <b>Telefone (diretor suplente de compliance)</b> deve ser preenchido somente com números.<br>';
}

if (isNaN(document.formulario.cOfficerSup_ramal.value) == true) {
	sMensagemErro += 'O campo <b>Ramal (diretor suplente de compliance)</b> deve ser preenchido somente com números.<br>'; 
}



		
		

  //Valida o Logradouro do End. Correspondência
  if (isNull(document.formulario.logradouro) == true){
    sMensagemErro += 'O campo <b>Logradouro</b> é de preenchimento obrigatório.<br>';
  /*}else if (document.formulario.logradouro.value.length < 3) {
    sMensagemErro += 'O campo <b>Logradouro</b> deve ter, no mínimo, 3 caracteres.<br>';
    setColor(document.formulario.logradouro, '#d1d9e0');*/
  }else if (isNaN(document.formulario.logradouro.value) == false){
    sMensagemErro += 'O campo <b>Logradouro</b> deve conter letras.<br>';
    setColor(document.formulario.logradouro, '#d1d9e0');  
  }
  
  //Valida o Número do End. Correspondência
  if (isNull(document.formulario.numero) == true){
    sMensagemErro += 'O campo <b>Número</b> é de preenchimento obrigatório.<br>';
  }else if(isNaN(document.formulario.numero.value) == true){
    sMensagemErro += 'O campo <b>Número</b> deve conter apenas caracteres numéricos.<br>';
    setColor(document.formulario.numero, '#d1d9e0');
  }

  //Valida o Bairro do End. Correspondência
  if (isNull(document.formulario.bairro) == true){
    sMensagemErro += 'O campo <b>Bairro</b> é de preenchimento obrigatório.<br>';
  }else if (isNaN(document.formulario.bairro.value) == false){
    sMensagemErro += 'O campo <b>Bairro</b> deve ser preenchido com letras.<br>';
    setColor(document.formulario.bairro, '#d1d9e0');
  }
    
  //Valida o Cidade do End. Correspondência
  if (isNull(document.formulario.cidade) == true){
    sMensagemErro += 'O campo <b>Cidade</b> é de preenchimento obrigatório.<br>';
  }else if (isNaN(document.formulario.cidade.value) == false){
    sMensagemErro += 'O campo <b>Cidade</b> deve ser preenchido com letras.<br>';
    setColor(document.formulario.cidade, '#d1d9e0');
  }
  
  //Valida CEP do End. Correspondência
  if (isNull(document.formulario.cep) == true){
      sMensagemErro += 'O campo <b>CEP</b> é de preenchimento obrigatório.<br>';
  }else if (isNaN(document.formulario.cep.value) == true){
      sMensagemErro += 'O campo <b>CEP</b> deve conter apenas números.<br>';
      setColor(document.formulario.cep, '#d1d9e0');
  }else if (document.formulario.cep.value.length != 8){
      sMensagemErro += 'O campo <b>CEP</b> deve possuir 8 dígitos.<br>';
          setColor(document.formulario.cep, '#d1d9e0');                   
  }

  
  //Valida Estado do End. Correspondência
  if ((document.formulario.estado.selectedIndex) == '' ){
    sMensagemErro += 'O campo <b>UF de correspondência</b> é de preenchimento obrigatório.<br>';
    setColor(document.formulario.estado, '#d1d9e0');
  }else{
    setColor(document.formulario.estado, 'white');
  }

  //Valida o Nome do Responsável pela Cobrança
  if (isNull(document.formulario.cobr_nome_responsavel) == true){
    sMensagemErro += 'O campo <b>Nome responsável pelo pagamento</b> é de preenchimento obrigatório.<br>';
  }else{

    var nome;
    nome = document.formulario.cobr_nome_responsavel;

    //Verifica se o nome possui algum caracter numérico
    var achou;
  
    lblVerificaRH:
    for (var i=0; i<nome.value.length; i++) { 
      achou = false;
      if ((isNaN(nome.value.charAt(i)) == false) && (nome.value.charAt(i) != " ")){
        achou = true;
        break lblVerificaRH;
      }
    }
    
    if (achou == true){
      setColor(document.formulario.cobr_nome_responsavel, '#d1d9e0')
      sMensagemErro += 'O campo <b>Nome Responsável pelo pagamento</b> não deve conter nenhum caracter númerico.<br>';  
    }

    //Verifica se o nome possui, pelo menos, 2 "palavras"

    if ((nome.value.indexOf(" ") == (nome.value.length-1)) || (nome.value.indexOf(" ") == -1)) {
        sMensagemErro += 'O campo <b>Nome Responsável pelo pagamento</b> deve ser preenchido com nome e sobrenome.<br>';
        setColor(document.formulario.cobr_nome_responsavel, '#d1d9e0')
    }
  }

  //Valida o Cargo do End. Cobrança
  if (isNull(document.formulario.cobr_cargo) == true){
    sMensagemErro += 'O campo <b>Cargo</b> é de preenchimento obrigatório.<br>';
  }else{

    if (isNaN(document.formulario.cobr_cargo.value) == false){
      sMensagemErro += 'O campo <b>Cargo do Responsável pelo pagamento</b> deve conter letras.<br>';
      setColor(document.formulario.cobr_cargo, '#d1d9e0');
    }

  }

    
  if (document.formulario.radio[1].checked == true) {

    //Valida DDD do End. Cobrança
    if (isNull(document.formulario.cobr_dddtelefone) == true) {
      sMensagemErro += 'O campo <b>DDD de Cobrança</b> é de preenchimento obrigatório.<br>';
    }else if (isNaN(document.formulario.cobr_dddtelefone.value) == true){
      sMensagemErro += 'O campo <b>DDD de Cobrança</b> deve ser preenchido somente com números.<br>'; 
      setColor(document.formulario.cobr_dddtelefone, '#d1d9e0');  
    }else if (document.formulario.cobr_dddtelefone.value.length < 2) {
      sMensagemErro += 'O campo <b>DDD de Cobrança</b> deve ter 2 algarísmos.<br>'; 
      setColor(document.formulario.cobr_dddtelefone, '#d1d9e0');  
    }
  
    //Valida Telefone do End. Cobrança
    if (isNull(document.formulario.cobr_telefone) == true) {
      sMensagemErro += 'O campo <b>Telefone de Cobrança</b> é de preenchimento obrigatório.<br>';
    }else if (isNaN(document.formulario.cobr_telefone.value) == true){
      sMensagemErro += 'O campo <b>Telefone de Cobrança</b> deve ser preenchido somente com números.<br>';
      setColor(document.formulario.cobr_telefone, '#d1d9e0'); 
    }else if (document.formulario.cobr_telefone.value.length < 7){
      sMensagemErro += 'O campo <b>Telefone de Cobrança</b> deve ter no mínimo 7 algarísmos.<br>';  
      setColor(document.formulario.cobr_telefone, '#d1d9e0');  
    }

    //Valida Ramal Telefone do End. Cobrança
    if (isNull(document.formulario.cobr_ramal) == false) {
      if (isNaN(document.formulario.cobr_ramal.value) == true){
        sMensagemErro += 'O campo <b>Ramal de Cobrança</b> deve ser preenchido somente com números.<br>'; 
        setColor(document.formulario.cobr_ramal, '#d1d9e0');  
      }
    }else{
      setColor(document.formulario.cobr_ramal, 'white');  
    }
    
    //Valida E-Mail do End. Cobrança
    if (document.formulario.cobr_email.value != ''){
      if (isValidMail(document.formulario.cobr_email) == false){
        sMensagemErro += 'O campo <b>E-Mail de Cobrança</b> não está preenchido corretamente.<BR>';
        setColor(document.formulario.cobr_email, '#d1d9e0');
      }else{
        setColor(document.formulario.cobr_email, 'white');
      }
    }else{
      sMensagemErro += 'O campo <b>E-Mail de Cobrança</b> é de preebchimento obrigatório.<BR>';
      setColor(document.formulario.cobr_email, '#d1d9e0');
    }
    
    //Valida o Logradouro do End. Cobrança
    if (isNull(document.formulario.cobr_logradouro) == true){
      sMensagemErro += 'O campo <b>Logradouro de Cobrança</b> é de preenchimento obrigatório.<br>';
    /*}else if (document.formulario.cobr_logradouro.value.length < 3) {
      sMensagemErro += 'O campo <b>Logradouro de Cobrança/b> deve ter, no mínimo, 3 caracteres.<br>';
      setColor(document.formulario.cobr_logradouro, '#d1d9e0');  */
    }else if (isNaN(document.formulario.cobr_logradouro.value) == false){
      sMensagemErro += 'O campo <b>Logradouro de Cobrança</b> deve conter letras.<br>';
      setColor(document.formulario.cobr_logradouro, '#d1d9e0'); 
    }
  
    //Valida o Número do End. Cobrança
    if (isNull(document.formulario.cobr_numero) == true) {
      sMensagemErro += 'O campo <b>Número de Cobrança</b> é de preenchimento obrigatório.<br>';
    }else{
      if (isNaN(document.formulario.cobr_numero.value) == true) {
        sMensagemErro += 'O campo <b>Número de Cobrança</b> deve ser preenchido somente com caracteres numéricos.<br>';
        setColor(document.formulario.cobr_numero, '#d1d9e0');  
      }else{
        setColor(document.formulario.cobr_numero, 'white');  
      }
    }

    //Valida o Bairro do End. Cobrança
    if (isNull(document.formulario.cobr_bairro) == true){
      sMensagemErro += 'O campo <b>Bairro de Cobrança</b> é de preenchimento obrigatório.<br>';
    }else if (isNaN(document.formulario.cobr_bairro.value) == false){
      sMensagemErro += 'O campo <b>Bairro de Cobrança</b> deve ser preenchido com letras.<br>';
      setColor(document.formulario.cobr_bairro, '#d1d9e0');  
    }
    

    //Valida o Cidade do End. Cobrança
    if (isNull(document.formulario.cobr_cidade) == true){
      sMensagemErro += 'O campo <b>Cidade de Cobrança</b> é de preenchimento obrigatório.<br>';   
    }else if (isNaN(document.formulario.cobr_cidade.value) == false){
      sMensagemErro += 'O campo <b>Cidade de Cobrança</b> deve ser preenchido com letras.<br>';     
      setColor(document.formulario.cobr_cidade, '#d1d9e0');  
    }
      
    //Valida CEP do End. Cobrança
    if (isNull(document.formulario.cobr_cep) == true){
        sMensagemErro += 'O campo <b>CEP de Cobrança</b> é de preenchimento obrigatório.<br>';
    }else if (isNaN(document.formulario.cobr_cep.value) == true){
        sMensagemErro += 'O campo <b>CEP de Cobrança</b> deve conter apenas números.<br>';
        setColor(document.formulario.cobr_cep, '#d1d9e0');
    }else if (document.formulario.cobr_cep.value.length != 8){
        sMensagemErro += 'O campo <b>CEP de Cobrança</b> deve possuir 8 dígitos.<br>';
            setColor(document.formulario.cobr_cep, '#d1d9e0');                  
    }
  
    //Valida Estado do End. Cobrança
    if ((document.formulario.cobr_estado.selectedIndex) == '' ){
      sMensagemErro += 'O campo <b>UF de Cobrança</b> é de preenchimento obrigatório.<br>';
      setColor(document.formulario.cobr_estado, '#d1d9e0');
    }else{
      setColor(document.formulario.cobr_estado, 'white'); 
    }
  
  }
  
  //VALIDAÇÃO DOS DADOS DO SUPLENTE
  if (document.formulario.radio_rh_suplente[0].checked == true) {

    //Valida o Nome Representande RH
    if (isNull(document.formulario.Nomesuprh) == true){
      sMensagemErro += 'O campo <b>Nome (Suplente)</b> é de preenchimento obrigatório.<br>';
    }else{

      var achou;

      lblVerificaRH:
      for (var i=0; i<document.formulario.Nomesuprh.value.length; i++) { 
        achou = false;
        if ((isNaN(document.formulario.Nomesuprh.value.charAt(i)) == false) && (document.formulario.Nomesuprh.value.charAt(i) != " ")){
          achou = true;
          break lblVerificaRH;
        }
      }

      if (achou == true){
        setColor(document.formulario.Nomesuprh, '#d1d9e0')
        sMensagemErro += 'O campo <b>Nome (Suplente)</b> não deve conter nenhum caracter númerico.<br>';  
      }

      //Verifica se o nome possui, pelo menos, 2 "palavras"
      var nome;
      nome = document.formulario.Nomesuprh;

      if ((nome.value.indexOf(" ") == (nome.value.length-1)) || (nome.value.indexOf(" ") == -1)) {
          sMensagemErro += 'O campo <b>Nome (Suplente)</b> deve ser preenchido com nome e sobrenome.<br>';
          setColor(nome, '#d1d9e0')
      }
    }

    //Valida o Cargo
    if (isNull(document.formulario.Cargosup) == true){
      sMensagemErro += 'O campo <b>Cargo (Suplente)</b> é de preenchimento obrigatório.<br>';
    }else{
      if (isNaN(document.formulario.Cargosup.value) == false){
        sMensagemErro += 'O campo <b>Cargo (Suplente)</b> deve conter letras.<br>';
        setColor(document.formulario.Cargosup, '#d1d9e0');
      }
    }

    //Valida o Sexo
    if (isNull(document.formulario.sexosup) == true){
      if (document.formulario.sexosup.value == ""){
        sMensagemErro += 'O campo <b>Sexo (Suplente)</b> é de preenchimento obrigatório.<br>';
      }
    }
  
  //Valida DDD
    if (isNull(document.formulario.Dddtelefonesup) == true) {
      sMensagemErro += 'O campo <b>DDD (Suplente)</b> é de preenchimento obrigatório.<br>';
    }else if (isNaN(document.formulario.Dddtelefonesup.value) == true){
      sMensagemErro += 'O campo <b>DDD (Suplente)</b> deve ser preenchido somente com números.<br>';  
      setColor(document.formulario.Dddtelefonesup, '#d1d9e0');  
    }else if (document.formulario.Dddtelefonesup.value.length < 2) {
      sMensagemErro += 'O campo <b>DDD</b> deve ter 2 algarísmos.<br>'; 
      setColor(document.formulario.Dddtelefonesup, '#d1d9e0');  
    }

    //Valida Telefone
    if (isNull(document.formulario.Telefonesup) == true) {
      sMensagemErro += 'O campo <b>Telefone (Suplente)</b> é de preenchimento obrigatório.<br>';
    }else if (isNaN(document.formulario.Telefonesup.value) == true){
      sMensagemErro += 'O campo <b>Telefone (Suplente)</b> deve ser preenchido somente com números.<br>'; 
      setColor(document.formulario.Telefonesup, '#d1d9e0');  
    }else if (document.formulario.Telefonesup.value.length < 7){
      sMensagemErro += 'O campo <b>Telefone (Suplente)</b> deve ter no mínimo 7 algarísmos.<br>'; 
      setColor(document.formulario.Telefonesup, '#d1d9e0');  
    }

    //Valida Ramal
    if (isNaN(document.formulario.Ramalsup.value) == true){
      sMensagemErro += 'O campo <b>Ramal (Suplente)</b> deve ser preenchido somente com números.<br>';  
      setColor(document.formulario.Ramalsup, '#d1d9e0');
    }else{
      setColor(document.formulario.Ramalsup, 'white');
    }


    //Valida E-Mail
    if ((isNull(document.formulario.Emailsup) == true) || (document.formulario.Emailsup.value == '' )) {
      sMensagemErro += 'O campo <b>E-Mail (Suplente)</b> é de preenchimento obrigatório.<br>';
    }
    else {
      if (isValidMail(document.formulario.Emailsup) == false){
        sMensagemErro += 'O campo <b>E-Mail (Suplente)</b> não está preenchido corretamente.<BR>';
        setColor(document.formulario.Emailsup, '#d1d9e0');
      }
    }

    //Valida o Logradouro do End. Correspondência
    if (isNull(document.formulario.Endcorrenderecosup) == true){
      sMensagemErro += 'O campo <b>Logradouro (Suplente)</b> é de preenchimento obrigatório.<br>';
    /*}else if (document.formulario.Endcorrenderecosup.value.length < 3) {
      sMensagemErro += 'O campo <b>Logradouro (Suplente)</b> deve ter, no mínimo, 3 caracteres.<br>';
      setColor(document.formulario.Endcorrenderecosup, '#d1d9e0');*/
    }else if (isNaN(document.formulario.Endcorrenderecosup.value) == false){
      sMensagemErro += 'O campo <b>Logradouro (Suplente)</b> deve conter letras.<br>';
      setColor(document.formulario.Endcorrenderecosup, '#d1d9e0');  
    }

    //Valida o Número do End. Correspondência
    if (isNull(document.formulario.endcorrnumendsup) == true){
      sMensagemErro += 'O campo <b>Número (Suplente)</b> é de preenchimento obrigatório.<br>';
    }else if(isNaN(document.formulario.endcorrnumendsup.value) == true){
      sMensagemErro += 'O campo <b>Número (Suplente)</b> deve conter apenas caracteres numéricos.<br>';
      setColor(document.formulario.endcorrnumendsup, '#d1d9e0');
    }

    //Valida o Bairro do End. Correspondência
    if (isNull(document.formulario.Endcorrbairrosup) == true){
      sMensagemErro += 'O campo <b>Bairro (Suplente)</b> é de preenchimento obrigatório.<br>';
    }else if (isNaN(document.formulario.Endcorrbairrosup.value) == false){
      sMensagemErro += 'O campo <b>Bairro (Suplente)</b> deve ser preenchido com letras.<br>';
      setColor(document.formulario.Endcorrbairrosup, '#d1d9e0');
    }

    //Valida o Cidade do End. Correspondência
    if (isNull(document.formulario.Endcorrcidadesup) == true){
      sMensagemErro += 'O campo <b>Cidade (Suplente)</b> é de preenchimento obrigatório.<br>';
    }else if (isNaN(document.formulario.Endcorrcidadesup.value) == false){
      sMensagemErro += 'O campo <b>Cidade (Suplente)</b> deve ser preenchido com letras.<br>';
      setColor(document.formulario.Endcorrcidadesup, '#d1d9e0');
    }

    //Valida CEP do End. Correspondência
    if (isNull(document.formulario.Endcorrcepsup) == true){
        sMensagemErro += 'O campo <b>CEP (Suplente)</b> é de preenchimento obrigatório.<br>';
    }else if (isNaN(document.formulario.Endcorrcepsup.value) == true){
        sMensagemErro += 'O campo <b>CEP (Suplente)</b> deve conter apenas números.<br>';
        setColor(document.formulario.Endcorrcepsup, '#d1d9e0');
    }else if (document.formulario.Endcorrcepsup.value.length != 8){
        sMensagemErro += 'O campo <b>CEP (Suplente)</b> deve possuir 8 dígitos.<br>';
        setColor(document.formulario.Endcorrcepsup, '#d1d9e0');                   
    }


    //Valida Estado do End. Correspondência
    if ((document.formulario.Endcorrufsup.selectedIndex) == '' ){
      sMensagemErro += 'O campo <b>UF de correspondência (Suplente)</b> é de preenchimento obrigatório.<br>';
      setColor(document.formulario.Endcorrufsup, '#d1d9e0');
    }else{
      setColor(document.formulario.Endcorrufsup, 'white');
    }


  }//FIM VERIFICAÇÃO SUPLENTE   
    
	if (sMensagemErro == '') {
		return true;
	} else {
		writeError(sMensagemErro);
		document.formulario.topo.focus(); 
		return false;         
	}
}


//*********************************************************
//               VALIDA  ALTERAÇÃO DE SENHA
//*********************************************************
function sendAlterarSenha(formulario)
{

  var sMensagemErro = '';

  //Valida a Senha Atual
  if (isNull(document.formulario.senha_atual) == true){
    sMensagemErro += 'O campo <b>Senha Atual</b> é de preenchimento obrigatório.<br>';
  }else if (document.formulario.senha_atual.value.length < 4){
    sMensagemErro += 'O campo <b>Senha Atual</b> deve ter, no mínimo, 4 caracteres.<br>';
    setColor(document.formulario.senha_atual, '#d1d9e0');
  }else if ((document.formulario.senha_atual.value) != (document.formulario.senha.value)){
    sMensagemErro += 'O dado fornecido como <b>Senha Atual</b> não está correto.<br>';
    setColor(document.formulario.senha_atual, '#d1d9e0'); 
  }  

  //Valida a Nova Senha
  if (isNull(document.formulario.nova_senha) == true){
    sMensagemErro += 'O campo <b>Nova Senha</b> é de preenchimento obrigatório.<br>';
  }else if (document.formulario.nova_senha.value.length < 4){
    sMensagemErro += 'O campo <b>Nova Senha</b> deve ter, no mínimo, 4 caracteres.<br>';
    setColor(document.formulario.nova_senha, '#d1d9e0');  
  }
  
  //Valida a Confirmação da Nova Senha
  if (isNull(document.formulario.nova_senha_confirma) == true){
    sMensagemErro += 'O campo <b>Confirme a nova senha</b> é de preenchimento obrigatório.<br>';
  }else if (document.formulario.nova_senha_confirma.value.length < 4){
    sMensagemErro += 'O campo <b>Confirme a nova senha</b> deve ter, no mínimo, 4 caracteres.<br>';
    setColor(document.formulario.nova_senha_confirma, '#d1d9e0');  
  }
  
  //Verifica se a Nova senha e a sua confirmação estão iguais
  if (document.formulario.nova_senha.value != document.formulario.nova_senha_confirma.value){
    sMensagemErro += 'Os campos <b>Nova Senha</b> e <b>Confirme a nova senha</b> devem ser iguais.<br>';
    setColor(document.formulario.nova_senha, '#d1d9e0');  
    setColor(document.formulario.nova_senha_confirma, '#d1d9e0');  
  }
  
  if (sMensagemErro == '')
  {
    return true;
  }
  else
  {
    writeError(sMensagemErro);
    return false;         
  }
  
}



//*********************************************************
//               VALIDA  CADASTRO DE RH - FUNÇÕES
//*********************************************************
function verificacadrh(formulario)
{
  
  var sMensagemErro = '';


  //Valida o Código da Área
  if (isNull(document.formulario.cod_area) == true){
    sMensagemErro += 'O campo <b>Código da Área</b> é de preenchimento obrigatório.<br>';
    setColor(document.formulario.cod_area, '#d1d9e0');  
  }

  //Valida a Data de Vigência
  if (isNull(document.formulario.datavigencia) == true){
        sMensagemErro += 'O campo <b>Data de Vigência</b> é de preenchimento obrigatório.<br>';
  }else if (verifica_data(document.formulario.datavigencia)== false){
    sMensagemErro += 'O campo <b>Data de Vigência</b> deve estar no formato dd/mm/aaaa e deve ser válida.<br>';
    setColor(document.formulario.datavigencia, '#d1d9e0');  
  }

  //Valida a Descrição da Área
  var descricao = document.formulario.nome_area
  if (isNull(document.formulario.nome_area) == true){
    sMensagemErro += 'O campo <b>Descrição da Área</b> é de preenchimento obrigatório.<br>';
      setColor(document.formulario.nome_area, '#d1d9e0');  
  }
  if (
  (descricao.value.indexOf(",") != -1) || 
  (descricao.value.indexOf(";") != -1) || 
  (descricao.value.indexOf(":") != -1) || 
  (descricao.value.indexOf("/") != -1) || 
  (descricao.value.indexOf("?") != -1) || 
  (descricao.value.indexOf("|") != -1) ||
  (descricao.value.indexOf("\\") != -1) ||
  (descricao.value.indexOf("<") != -1) ||
  (descricao.value.indexOf(">") != -1) || 
  (descricao.value.indexOf("^") != -1) ||
  (descricao.value.indexOf("~") != -1) || 
  (descricao.value.indexOf("]") != -1) || 
  (descricao.value.indexOf("}") != -1) || 
  (descricao.value.indexOf("[") != -1) || 
  (descricao.value.indexOf("{") != -1) || 
  (descricao.value.indexOf("´") != -1) || 
  (descricao.value.indexOf("`") != -1) || 
  (descricao.value.indexOf("'") != -1) || 
  (descricao.value.indexOf("!") != -1) || 
  (descricao.value.indexOf("@") != -1) || 
  (descricao.value.indexOf("#") != -1) || 
  (descricao.value.indexOf("$") != -1) || 
  (descricao.value.indexOf("%") != -1) || 
  (descricao.value.indexOf("¨") != -1) || 
  (descricao.value.indexOf("&") != -1) || 
  (descricao.value.indexOf("*") != -1) || 
  (descricao.value.indexOf("(") != -1) || 
  (descricao.value.indexOf(")") != -1) || 
  (descricao.value.indexOf("-") != -1) || 
  (descricao.value.indexOf("_") != -1) || 
  (descricao.value.indexOf("=") != -1) || 
  (descricao.value.indexOf("+") != -1)){
    sMensagemErro += 'O campo <b>Descrição da Área</b> deve ser preenchido somente com letras.<br>';
    setColor(document.formulario.nome_area, '#d1d9e0');  
  }
  
  //Verifica a Certificação requerida
  if (document.formulario.cod_certificacao.selectedIndex == 0 || isNull(document.formulario.cod_certificacao) == true){
    sMensagemErro += 'O campo <b>Certificação Requerida</b> é de preenchimento obrigatório.<br>';
    setColor(document.formulario.cod_certificacao, '#d1d9e0');  
  }
  
  if (sMensagemErro == '')
  {
    return true;
  }
  else
  {
    writeError(sMensagemErro);
    return false;         
  }
  
}


//*********************************************************
//        VALIDA  INCLUSÃO DE SITUAÇÃO FUNCIONAL
//*********************************************************
function verificaincluisitfuncional(formulario)
{
  
  var sMensagemErro = '';


  //Valida a Data Situação
  if (isNull(document.formulario.datasituacao) == true){
        sMensagemErro += 'O campo <b>Data</b> é de preenchimento obrigatório.<br>';
  }else if (verifica_data(document.formulario.datasituacao)== false){
    sMensagemErro += 'O campo <b>Data</b> deve estar no formato dd/mm/aaaa e deve ser válida.<br>';
    setColor(document.formulario.datasituacao, '#d1d9e0');  
  }
  
  
  //Valida o Evento - Tipo de Posição Funcional
  if (document.formulario.tipoposfuncional.selectedIndex == 0 || isNull(document.formulario.tipoposfuncional) == true){
    sMensagemErro += 'O campo <b>Evento</b> é de preenchimento obrigatório.<br>';
    setColor(document.formulario.tipoposfuncional, '#d1d9e0');  
  }


  //Valida a Área de Atuação
  if (document.formulario.codatuacao.selectedIndex == 0 || isNull(document.formulario.codatuacao) == true){
    sMensagemErro += 'O campo <b>Área de Atuação</b> é de preenchimento obrigatório.<br>';
    setColor(document.formulario.codatuacao, '#d1d9e0');  
  }

  //Valida a Função
  if (document.formulario.codfuncao.selectedIndex == 0 || isNull(document.formulario.codfuncao) == true){
    sMensagemErro += 'O campo <b>Função</b> é de preenchimento obrigatório.<br>';
    setColor(document.formulario.codfuncao, '#d1d9e0');  
  }
  
  //Valida o Local de Trabalho
  if (isNull(document.formulario.localtrabalho) == true){
    sMensagemErro += 'O campo <b>Local de Trabalho</b> é de preenchimento obrigatório.<br>';
      setColor(document.formulario.localtrabalho, '#d1d9e0');  
  }
  
  if (sMensagemErro == '')
  {
    return true;
  }
  else
  {
    writeError(sMensagemErro);
    return false;         
  }
  
}

//*********************************************************
//               VALIDA  PROVA - PLANILHA DE ESTATÍSTICA
//*********************************************************
function verificaprova(formulario)
{
  
  var sMensagemErro = '';


  //Verifica a Prova
  if (document.formulario.cod_prova.selectedIndex == 0 || isNull(document.formulario.cod_prova) == true){
    sMensagemErro += 'O campo <b>Prova</b> é de preenchimento obrigatório.<br>';
    setColor(document.formulario.cod_prova, '#d1d9e0');  
  }
  
  if (sMensagemErro == '')
  {
    return true;
  }
  else
  {
    writeError(sMensagemErro);
    return false;         
  }
  
}

//*********************************************************
//     VALIDA ALTERAÇÃO DE SENHA DE PROF. CERTIFICADO
//*********************************************************
function NovaSenhaProfissional(formulario)
{
  var sMensagemErro = '';
  
  //Senha Nova
  if (document.formulario.NewPass.value.length == 0){
    sMensagemErro += 'O campo <b>Nova Senha</b> é de preenchimento obrigatório.<br>';
    setColor(document.formulario.NewPass, '#d1d9e0');
  }else{
    setColor(document.formulario.NewPass, '#ffffff');
  }
  
  //Senha Nova
  if (document.formulario.ReNewPass.value.length == 0){
    sMensagemErro += 'O campo <b>Confirma Nova Senha</b> é de preenchimento obrigatório.<br>';
    setColor(document.formulario.ReNewPass, '#d1d9e0');
  }else{
    setColor(document.formulario.ReNewPass, '#ffffff');
  }
  
  if (document.formulario.ReNewPass.value != document.formulario.NewPass.value){
    sMensagemErro += 'Os campos <b>Nova Senha</b> e <b>Confirma Nova Senha</b> devem ser iguais.<br>';
    setColor(document.formulario.NewPass, '#d1d9e0');
    setColor(document.formulario.ReNewPass, '#d1d9e0');
  }
  
  
  if (sMensagemErro == '')
  {
    return true;
  }
  else
  {
    writeError(sMensagemErro);
    return false;         
  }
  
}

/*
//*********************************************************
function verifyFields(Formulario)
{
  var sColorBad  = '#d1d9e0';  
  var sColorGood = 'white';
  var sMensagemErro = '';
  var sNumero;
  var i;
  var sDateType;
  var cDateType;
      
  // Varre todos os campos do formulário
  for (i=0; i< Formulario.elements.length; i++)
  {   
    // Verifica se o campo é um INPUT TYPE='text', ou seja, um campo de texto
    if (Formulario.elements[i].type == 'text')
    {           
      sDateType = Formulario.elements[i].name.slice(2, 5);
      cDateType = sDateType.charAt(0); 
        
      // Pega o número do campo no grupo PLs e Cotas de Fechamento
      sNumero = Formulario.elements[i].name.charAt(Formulario.elements[i].name.length-1);
      
      // Verifica se o campo está vazio
      if (isNull(Formulario.elements[i]) == true )
      {           
        // Verifica se o campo faz parte do grupo Início das Atividades ou PLs e Cotas de Fechamento para personalizar a mensagem de erro
        if (Formulario.elements[i].name.search(/d{1}/) != -1)
        {
          sMensagemErro += '- O campo Início das Atividades (' + sDateType + ') é de preenchimento obrigatório.<br>';             
        }
        else
        {                     
          sMensagemErro += '- O campo PLs e Cotas de Fechamento Nº ' + sNumero + ' (' + sDateType + ') é de preenchimento obrigatório.<br>';  
        }
      }
      
      // O campo não está vazio
      else
      {
        // Verifica se o campo faz parte de alguma data
        if (Formulario.elements[i].name.search(/Inicio|Fechamento/) != -1)
        {       
          // Verifica se o campo é um dia é válido
          if (isValidDate(Formulario.elements[i], cDateType) == false)  
          {
            // Verifica se o campo faz parte do grupo Início das Atividades ou PLs e Cotas de Fechamento para personalizar a mensagem de erro         
            if (Formulario.elements[i].name.search(/d{1}/) != -1)
            {
              sMensagemErro += '- O campo Início das Atividades (' + sDateType + ') tem que ser um dia válido<br>';
            }
            else
            { 
              // Pega o número do campo no grupo PLs e Cotas de Fechamento
              sNumero = Formulario.elements[i].name.charAt(Formulario.elements[i].name.length-1);
              
              sMensagemErro += '- O campo PLs e Cotas de Fechamento Nº ' + sNumero + ' (' + sDateType + ') tem que ser um ' + sDateType.toLowerCase() + ' válido.<br>'; 
            }
          }
        }
        
        // Verifica se o campo é um valor de PL
        if (Formulario.elements[i].name.search(/Pl/i) != -1)
        {
          if (isNaN(Formulario.elements[i].value) == true)
          {
            setColor(Formulario.elements[i], sColorBad);
            sMensagemErro += '- O campo PLs e Cotas de Fechamento Nº ' + sNumero + ' (' + 'PL' + ') tem que ser um ' + 'número' + ' válido.<br>';   
          }
          else
          {
            setColor(Formulario.elements[i], sColorGood); 
          }
        }
      } 
    }
  }
          
  if (sMensagemErro != '')
  {
    writeError(sMensagemErro);
    document.Cadastro.elements[0].focus();
    return false;
  }   
  
  return true;
}


function sendCotas(Formulario)
{
  //document.all['MensagemErro'].innerHTML = '';  
  //return verifyFields(Formulario);
  CountFields(Formulario);
  return true;
}

*/ 
//*********************************************************
//               VALIDA  DOWNLOAD PLANILHA
//*********************************************************
function verificaplanilha(formulario)
{
  
  var sMensagemErro = '';


  //Verifica a Prova
  if (document.formulario.cod_prova.disabled == false){
    if (document.formulario.cod_prova.selectedIndex == 0 || isNull(document.formulario.cod_prova) == true){
      sMensagemErro += 'O campo <b>Prova</b> é de preenchimento obrigatório.<br>';
      setColor(document.formulario.cod_prova, '#d1d9e0');  
    }
    
  }
  if (sMensagemErro == '')
  {
    return true;
  }
  else
  {
    writeError(sMensagemErro);
    return false;         
  }
  
}


//*********************************************************
//    VALIDA CONSULTA HISTÓRICO DE CERTIFICADOS
//*********************************************************
function verificahistcertificado(formulario)
{
  
  var sMensagemErro = '';


  if  (document.formulario.cpf.value.length == 0){
    sMensagemErro += 'O campo <b>CPF</b> é de preenchimento obrigatório.<br>';
    setColor(document.formulario.cpf, '#d1d9e0');
  }
  else if (document.formulario.cpf.value.lenght != 0){
    if (verificaCPF2(document.formulario.cpf.value) == false){
      sMensagemErro += '<b>CPF</b> Inválido.<br>';
      setColor(document.formulario.cpf, '#d1d9e0');  
    }
  } 
  if (document.formulario.exibesenha.value != 'N'){
    if (document.formulario.senha.value.length == 0){ 
        sMensagemErro += 'O campo <b>Senha</b> é de preenchimento obrigatório.<br>';
        setColor(document.formulario.senha, '#d1d9e0');  
    }
  }
  
  if (sMensagemErro == '')
  {
    return true;
  }
  else
  {
    writeError(sMensagemErro);
    return false;         
  }
  
}


//*********************************************************
//    VALIDA ACOMPANHAMENTO RH - SITUAÇÃO FUNCIONAL
//*********************************************************
function verificasitfuncional(formulario)
{
  
  var sMensagemErro = '';


  if  (document.formulario.cpf.value.length == 0){
    sMensagemErro += 'O campo <b>CPF</b> é de preenchimento obrigatório.<br>';
    setColor(document.formulario.cpf, '#d1d9e0');
  }
  else if (document.formulario.cpf.value.lenght != 0){
    if (verificaCPF2(document.formulario.cpf.value) == false){
      sMensagemErro += '<b>CPF</b> Inválido.<br>';
      setColor(document.formulario.cpf, '#d1d9e0');  
    }
  } 
    
  if (sMensagemErro == '')
  {
    return true;
  }
  else
  {
    writeError(sMensagemErro);
    return false;         
  }
  
}



//*********************************************************
//     VALIDA  CADASTRO/ALTERAÇÃO/EXCLUSÃO DE SENHA 
//*********************************************************
function verificasenha(formulario)
{
  
  var sMensagemErro = '';


  //Valida o Código da Instituição
  if (document.formulario.codinst.selectedIndex == 0 || isNull(document.formulario.codinst) == true){
    sMensagemErro += 'O campo <b>Instituição</b> é de preenchimento obrigatório.<br>';
    setColor(document.formulario.codinst, '#d1d9e0');  
  }

  //Valida o Nome
  if (isNull(document.formulario.nome) == true){
        sMensagemErro += 'O campo <b>Nome</b> é de preenchimento obrigatório.<br>';
    setColor(document.formulario.nome, '#d1d9e0');  
  }

  //Valida o Login
  if (isNull(document.formulario.login) == true){
    sMensagemErro += 'O campo <b>Login</b> é de preenchimento obrigatório.<br>';
      setColor(document.formulario.login, '#d1d9e0');  
  }
  
  if (document.formulario.operacao.value == 'Inclusão'){
    //Verifica a Senha
    if (isNull(document.formulario.senha) == true){
      sMensagemErro += 'O campo <b>Senha</b> é de preenchimento obrigatório.<br>';
        setColor(document.formulario.senha, '#d1d9e0');  
    }
  
    //Verifica a Conf. Senha
    if (isNull(document.formulario.confsenha) == true){
      sMensagemErro += 'O campo <b>Confirma Senha</b> é de preenchimento obrigatório.<br>';
        setColor(document.formulario.confsenha, '#d1d9e0');  
    }
  } 
  else if (document.formulario.operacao.value == 'Alteração'){
    //Verifica a Senha
    if ((isNull(document.formulario.senha) == false) && (isNull(document.formulario.confsenha) == true)){
      sMensagemErro += 'O campo <b>Confirma a Nova Senha</b> é de preenchimento obrigatório.<br>';
        setColor(document.formulario.confsenha, '#d1d9e0');  
    }
  
    //Verifica a Conf. Senha
    if ((isNull(document.formulario.senha) == true) && (isNull(document.formulario.confsenha) == false)){
      sMensagemErro += 'O campo <b>Nova Senha</b> é de preenchimento obrigatório.<br>';
        setColor(document.formulario.senha, '#d1d9e0');  
    }

  } 
  
  //Verifica se a Senha e a Confirmação de Senha são iguais
  if ((isNull(document.formulario.confsenha) == false)  && (isNull(document.formulario.senha) == false)){
   if (document.formulario.confsenha.value !=  document.formulario.senha.value){
    sMensagemErro += 'O campo <b>Confirma Senha</b> não está igual a Senha Informada.<br>';
      setColor(document.formulario.confsenha, '#d1d9e0');  
   }   
  }
  
  if (sMensagemErro == '')
  {
    return true;
  }
  else
  {
    writeError(sMensagemErro);
    return false;         
  }
  
}

//*********************************************************
//     VALIDA  CADASTRO/ALTERAÇÃO/EXCLUSÃO DE SENHA 
//*********************************************************
function verificasenhaalt(formulario)
{
  
  var sMensagemErro = '';


  //Valida o Código da Instituição
  if (document.formulario.codinst.selectedIndex == 0 || isNull(document.formulario.codinst) == true){
    sMensagemErro += 'O campo <b>Instituição</b> é de preenchimento obrigatório.<br>';
    setColor(document.formulario.codinst, '#d1d9e0');  
  }

  //Valida o Nome
  if (isNull(document.formulario.nome) == true){
        sMensagemErro += 'O campo <b>Nome</b> é de preenchimento obrigatório.<br>';
    setColor(document.formulario.nome, '#d1d9e0');  
  }

  //Valida o Login
  if (isNull(document.formulario.login) == true){
    sMensagemErro += 'O campo <b>Login</b> é de preenchimento obrigatório.<br>';
      setColor(document.formulario.login, '#d1d9e0');  
  }
  
  //Verifica a Senha
  if (isNull(document.formulario.senha) == true){
    sMensagemErro += 'O campo <b>Senha</b> é de preenchimento obrigatório.<br>';
      setColor(document.formulario.senha, '#d1d9e0');  
  }
  
  
  //Verifica a Senha Correta
  if (isNull(document.formulario.senha) == false){
   if (document.formulario.senha.value !=  document.formulario.senhacorreta.value){  
    sMensagemErro += 'O campo <b>Senha</b> não esta correto.<br>';
      setColor(document.formulario.senha, '#d1d9e0');
   }   
  } 
  
  //Verifica a Nova Senha
  if (isNull(document.formulario.novasenha) == true){
    sMensagemErro += 'O campo <b>Nova Senha</b> é de preenchimento obrigatório.<br>';
      setColor(document.formulario.novasenha, '#d1d9e0');  
  }
  
  //Verifica a Conf. Senha
  if (isNull(document.formulario.confsenha) == true){
    sMensagemErro += 'O campo <b>Confirma Senha</b> é de preenchimento obrigatório.<br>';
      setColor(document.formulario.confsenha, '#d1d9e0');  
  }
  
  //Verifica se a Nova Senha e a Confirmação de Senha são iguais
  if ((isNull(document.formulario.confsenha) == false)  && (isNull(document.formulario.novasenha) == false)){
   if (document.formulario.confsenha.value !=  document.formulario.novasenha.value){
    sMensagemErro += 'O campo <b>Confirma Senha</b> não está igual a Nova Senha Informada.<br>';
      setColor(document.formulario.confsenha, '#d1d9e0');  
   }   
  }
  
  if (sMensagemErro == '')
  {
    return true;
  }
  else
  {
    writeError(sMensagemErro);
    return false;         
  }
  
}


//*********************************************************
//  VALIDA  CADASTRO/ALTERAÇÃO/EXCLUSÃO DE SENHA  - ANBID
//*********************************************************
function verificasenhaaltanbid(formulario)
{
  
  var sMensagemErro = '';


  //Valida o Código da Instituição
  if (document.formulario.codinst.selectedIndex == 0 || isNull(document.formulario.codinst) == true){
    sMensagemErro += 'O campo <b>Instituição</b> é de preenchimento obrigatório.<br>';
    setColor(document.formulario.codinst, '#d1d9e0');  
  }

  //Valida o Nome
  if (isNull(document.formulario.nome) == true){
        sMensagemErro += 'O campo <b>Nome</b> é de preenchimento obrigatório.<br>';
    setColor(document.formulario.nome, '#d1d9e0');  
  }

  //Valida o Login
  if (isNull(document.formulario.login) == true){
    sMensagemErro += 'O campo <b>Login</b> é de preenchimento obrigatório.<br>';
      setColor(document.formulario.login, '#d1d9e0');  
  }
  
  
  //Verifica a Nova Senha
  if (isNull(document.formulario.novasenha) == true){
    sMensagemErro += 'O campo <b>Nova Senha</b> é de preenchimento obrigatório.<br>';
      setColor(document.formulario.novasenha, '#d1d9e0');  
  }
  
  //Verifica a Conf. Senha
  if (isNull(document.formulario.confsenha) == true){
    sMensagemErro += 'O campo <b>Confirma Senha</b> é de preenchimento obrigatório.<br>';
      setColor(document.formulario.confsenha, '#d1d9e0');  
  }
  
  //Verifica se a Nova Senha e a Confirmação de Senha são iguais
  if ((isNull(document.formulario.confsenha) == false)  && (isNull(document.formulario.novasenha) == false)){
   if (document.formulario.confsenha.value !=  document.formulario.novasenha.value){
    sMensagemErro += 'O campo <b>Confirma Senha</b> não está igual a Nova Senha Informada.<br>';
      setColor(document.formulario.confsenha, '#d1d9e0');  
   }   
  }
  
  if (sMensagemErro == '')
  {
    return true;
  }
  else
  {
    writeError(sMensagemErro);
    return false;         
  }
  
}

//*********************************************************
//     VALIDA  CADASTRO/ALTERAÇÃO/EXCLUSÃO DE INSTITUIÇÕES
//*********************************************************
function verificainst(formulario)
{
  
  var f = document.formulario;
  var sMensagemErro = '';


  //Valida o Código da Instituição
  if (f.codinst.selectedIndex == 0 || isNull(f.codinst) == true){
    sMensagemErro += 'O campo <b>Código da Instituição</b> é de preenchimento obrigatório.<br>';
    setColor(f.codinst, '#d1d9e0');  
  }

  //Valida o Tipo de Instituição
  if (f.codtipoinstituicao.options.selectedIndex == 0){
        sMensagemErro += 'O campo <b>Tipo de Instituição</b> é de preenchimento obrigatório.<br>';
    	setColor(f.codtipoinstituicao, '#d1d9e0');  
  } else {
  	setColor(f.codtipoinstituicao, 'white');
  }
  
  //Valida o Nome
  if (isNull(f.nome) == true){
        sMensagemErro += 'O campo <b>Razão Social</b> é de preenchimento obrigatório.<br>';
    	setColor(f.nome, '#d1d9e0');  
  }
  
  //Valida o cnpj
  if (isNull(f.cnpj) == true){  
	sMensagemErro += 'O campo <b>CNPJ</b> é de preenchimento obrigatório.<br>';
    	setColor(f.cnpj, '#d1d9e0');  
  }
  else if (!isValidCNPJ(f.cnpj)){
	sMensagemErro += 'O <b>CNPJ</b> informado é inválido.<br>';
    	setColor(f.cnpj, '#d1d9e0');    
  }
  else{  
	setColor(f.cnpj, 'white');
  }

  //Valida Participante

  setColor(f.codtipoparticipacao, 'white');	
  if ((f.tip_partic_certificacao.selectedIndex == 0) == true){
        sMensagemErro += 'O campo <b>Participante</b> é de preenchimento obrigatório.<br>';
    	setColor(f.tip_partic_certificacao, '#d1d9e0');  
  }else{
    	setColor(f.tip_partic_certificacao, 'white');

	if ((f.tip_partic_certificacao.value == 'P') == true)
	{
		if ((f.codtipoparticipacao.selectedIndex == 0) == true)
		{
		        sMensagemErro += 'O campo <b>Tipo de Participação</b> é de preenchimento obrigatório.<br>';
		    	setColor(f.codtipoparticipacao, '#d1d9e0');  
		}
		else
		{
		    	setColor(f.codtipoparticipacao, 'white');	
		}
	}	
  }

  
  //Certificação - Ao menos uma
  if (f.tipoCertDestino.options.length == 0){
        sMensagemErro += 'O campo <b>Certificações que se aplicam</b> é de preenchimento obrigatório.<br>';
    	setColor(f.tipoCertDestino, '#d1d9e0');  
  }else{
    	setColor(f.tipoCertDestino, 'white');
  }  
  
  //Valida o Contato
  if (isNull(f.contato) == true){
        sMensagemErro += 'O campo <b>Contato RH</b> é de preenchimento obrigatório.<br>';
    	setColor(f.contato, '#d1d9e0');  
  }
  
  //Valida o DDD Telefone
  if (isNull(f.dddTelefone) == true){
        sMensagemErro += 'O campo <b>DDD do Telefone RH</b> é de preenchimento obrigatório.<br>';
    	setColor(f.dddTelefone, '#d1d9e0');  
  }
  else if (isNaN(f.dddTelefone.value)) {
        sMensagemErro += 'O campo <b>DDD do Telefone RH</b> deve ser numérico.<br>';
    	setColor(f.dddTelefone, '#d1d9e0');  
  }
  
  //Valida o Telefone
  if (isNull(f.telefone) == true){
        sMensagemErro += 'O campo <b>Telefone RH</b> é de preenchimento obrigatório.<br>';
    	setColor(f.telefone, '#d1d9e0');  
  } 
  else if (isNaN(f.telefone.value)) {
        sMensagemErro += 'O campo <b>Telefone RH</b> deve ser numérico.<br>';
    	setColor(f.telefone, '#d1d9e0');  
  }
  
  if (f.ramal.value != ""){
  	if (isNaN(f.ramal.value)) {
        	sMensagemErro += 'O campo <b>Ramal</b> deve ser numérico.<br>';
    		setColor(f.ramal, '#d1d9e0');  
    	}
  }
  
  //Valida o Email
  if (isNull(f.email) == true){
        sMensagemErro += 'O campo <b>Email RH</b> é de preenchimento obrigatório.<br>';
    	setColor(f.email, '#d1d9e0');  
  }
  else if (!emailValido(f.email.value)) {
        sMensagemErro += 'O campo <b>Email RH</b> informado é inválido.<br>';
    	setColor(f.email, '#d1d9e0');  
  }  

  if (sMensagemErro == '')
  {
    return true;
  }
  else
  {
    writeError(sMensagemErro);
    return false;         
  }
  
}
//*********************************************************
//   VERIFICA O RG E DATA NASC EM ADESAO AO CODIGO
//    ADESAO_PASSO2.ASP
//*********************************************************
function DadosAdesao(formulario)
{

  var sMensagemErro = '';
  
  //Valida RG do usuário
  if (isNull(document.formulario.rg) == true)
  {
        sMensagemErro += 'O campo <b> RG </b> é de preenchimento obrigatório.<br>';
    setColor(document.formulario.rg, '#d1d9e0');  
  }

  
  //Valida Data de Nascimento
  var vetordata = new Array(3);
  vetordata = document.formulario.dt_nasc.value.split('/',3);
  var objdata = new Date();
  if (isNull(document.formulario.dt_nasc) == true)
  {
    sMensagemErro += 'O campo <b>Data de Nascimento</b> é de preenchimento obrigatório.<br>';
  }else{
    if (verifica_data(document.formulario.dt_nasc) == false){
      sMensagemErro += 'O campo <b>Data de Nascimento</b> não está preenchido corretamente.<br>';
    } 
  }
  
  if (sMensagemErro == '')
  {
    return true;
  }
  else
  {
    writeError(sMensagemErro);
    return false;         
  }
}

//*********************************************************
//   VERIFICA O E-MAIL EM ADESAO AO CODIGO
//   ADESAO_PASSO3.ASP  
//*********************************************************
function EmailAdesao(formulario)
{

  var sMensagemErro = '';

  if (isNull(document.formulario.Email) == true )
  {
    sMensagemErro += 'O campo <b>Email</b> é de preenchimento obrigatório.<br>';
    setColor(document.formulario.Email, '#d1d9e0');
  }
  else
  {
    setColor(document.formulario.Email, 'white');
  }
  
  
  if (isNull(document.formulario.Email) == false )
  {
    if (isValidMail(document.formulario.Email) == false)
      sMensagemErro += 'O campo <b>E-Mail</b> não está preenchido corretamente.<BR>';

  }


  if (sMensagemErro == '')
  {
    return true;
  }
  else
  {
    writeError(sMensagemErro);
    return false;         
  }
}

//*********************************************************
//   VERIFICA A SENHA DE EMAIL EM ADESAO AO CODIGO
//   ADESAO_PASSO4.ASP
//*********************************************************
function SenhaAdesao(formulario)
{

  var sMensagemErro = '';
  var ret = false;
  ret = EvalPassword(document.formulario.Senha.value);
  

  //Valida a Nova Senha

  if (document.formulario.Senha.value.length < 8){
    sMensagemErro += 'O campo <b>Senha</b> deve ter, no mínimo, 4 letras e 4 números.<br>';
    setColor(document.formulario.Senha, '#d1d9e0');  
  }
  
  //Valida a Confirmação da Nova Senha
  if (document.formulario.Senha_Confirma.value.length < 8){
    sMensagemErro += 'O campo <b>Confirmação de senha</b> deve ter, no mínimo, 4 letras e 4 números.<br>';
    setColor(document.formulario.Senha_Confirma, '#d1d9e0');  
  }
  
  //Verifica se a Nova senha e a sua confirmação estão iguais
  if (document.formulario.Senha.value != document.formulario.Senha_Confirma.value)
  {   
    sMensagemErro += 'Os campos <b>Senha</b> e <b>Confirmação de senha</b> devem ser iguais.<br>';
    setColor(document.formulario.Senha, '#d1d9e0');  
    setColor(document.formulario.Senha_Confirma, '#d1d9e0');  
  }
  
  if(ret == true)
  {
    //alert("Senha válida!");
  }
  else
  {
    //alert("Senha inválida!");
    sMensagemErro += 'A senha que você cadastrou não é válida. Tente novamente.<br>';
    setColor(document.formulario.Senha, '#d1d9e0');  
    setColor(document.formulario.Senha_Confirma, '#d1d9e0');    
    
  }
  
  
  if (sMensagemErro == '')
  {
    document.formulario.txtHash.value = CalcHash(document.formulario.Senha.value);
    return true;
  }
  else
  {
    writeError(sMensagemErro);
    document.formulario.Senha.value = '';
    document.formulario.Senha_Confirma.value = '';
    return false;         
  }
  
}

//*********************************************************
//   VERIFICA A SENHA DEFINITIVA EM ADESAO AO CODIGO
//   ADESAO_SENHA_DEFINIVA.ASP
//*********************************************************
function SenhaDefini(formulario)
{

  var sMensagemErro = '';
  var ret = false;
  ret = EvalPassword(document.formulario.Senha_Defini.value);
  ret2 = EvalPassword(document.formulario.Senha_Provis.value);
  
  
  
  //Valida a Senha Provisoria
   if (document.formulario.Senha_Provis.value.length < 8){
    sMensagemErro += 'O campo <b>Senha provisória</b> deve ter, no mínimo, 4 letras e 4 números.<br>';
    setColor(document.formulario.Senha_Provis, '#d1d9e0');  
  }

  //Valida a Senha Provisória que não poderá ser igual a senha defitiva
  if (document.formulario.Senha_Defini == document.formulario.Senha_Provis){
    sMensagemErro += 'O campo <b>Senha provisória</b>  e o campo <b>Senha definitiva</b> não podem ser iguais.<br>';
    setColor(document.formulario.Senha_Defini, '#d1d9e0');     
  }
  
  //Valida a Senha Definitiva
  if (document.formulario.Senha_Defini.value.length < 8){
    sMensagemErro += 'O campo <b>Senha definitiva</b> deve ter, no mínimo, 4 letras e 4 números.<br>';
    setColor(document.formulario.Senha_Defini, '#d1d9e0');  
  }
  
  //Valida a Confirmação da Nova Senha
  if (document.formulario.Senha_Defini_Confirma.value.length < 8){
    sMensagemErro += 'O campo <b>Confirmação de senha</b> deve ter, no mínimo, 4 letras e 4 números.<br>';
    setColor(document.formulario.Senha_Defini_Confirma, '#d1d9e0');  
  }
  
  //Verifica se a Nova senha e a sua confirmação estão iguais
  if (document.formulario.Senha_Defini.value != document.formulario.Senha_Defini_Confirma.value)
  {   
    sMensagemErro += 'Os campos <b>Senha</b> e <b>Confirmação de senha</b> devem ser iguais.<br>';
    setColor(document.formulario.Senha_Defini, '#d1d9e0');  
    setColor(document.formulario.Senha_Defini_Confirma, '#d1d9e0');  
  }
  
  if(ret == true)
  {
    //alert("Senha válida!");
  }
  else
  {
    //alert("Senha inválida!");
    sMensagemErro += 'A senha que você cadastrou não é válida. Tente novamente.<br>';
    setColor(document.formulario.Senha_Provis, '#d1d9e0'); 
    setColor(document.formulario.Senha_Defini, '#d1d9e0');  
    setColor(document.formulario.Senha_Defini_Confirma, '#d1d9e0');  
    
  }
  
  
  if (sMensagemErro == '')
  {
    document.formulario.txtHash_Defini.value = CalcHash(document.formulario.Senha_Defini.value);
    document.formulario.txtHash_Provis.value = CalcHash(document.formulario.Senha_Provis.value);
    return true;
    
  }
  else
  {
    
    writeError(sMensagemErro);
    document.formulario.Senha_Provis.value = '';
    document.formulario.Senha_Defini.value = '';
    document.formulario.Senha_Defini_Confirma.value = '';
    return false;         
  }
  
}

//*********************************************************
//   VERIFICA A SENHA DEFINITIVA EM ADESAO AO CODIGO
//   ADESAO_CONFIRMACAO.ASP
//*********************************************************
function SenhaDefiniConfirm(formulario)
{

  var sMensagemErro = '';
  var ret = false;
  ret = EvalPassword(document.formulario.Senha_Defini.value);

  
  //Valida a Senha Provisoria
   if (document.formulario.Senha_Defini.value.length < 8){
    sMensagemErro += 'O campo <b>Senha</b> deve ter, no mínimo, 4 letras e 4 números.<br>';
    setColor(document.formulario.Senha_Defini, '#d1d9e0');  
  }
  
  if(ret == true)
  {
    //alert("Senha válida!");
  }
  else
  {
    //alert("Senha inválida!");
    sMensagemErro += 'A senha que você cadastrou não é válida. Tente novamente.<br>';
    setColor(document.formulario.Senha_Defini, '#d1d9e0');  
    document.formulario.Senha_Defini.Value = ''
  }
  

  if (sMensagemErro == '')
  {
    document.formulario.txtHash.value = CalcHash(document.formulario.Senha_Defini.value);
    return true;
  }
  else
  {
    
    writeError(sMensagemErro);
    document.formulario.Senha_Defini.value = ''; 
    return false;         
  }
  
}

// funcao que confere o valor de um campo do form na adesão

function validaCampo(campoAnt)
{
  if (Trim(campoAnt) != Trim(document.formulario.Email.value))
  { if(confirm("Deseja que o seu endereço eletrônico seja substituído no banco de dados da ANBID por esse que você acabou de cadastrar?"))
    {
      document.formulario.submit();
    }
  }
  else
  {
    document.formulario.submit();
  }

}

// funcao que confere o valor escolhido no menu da adesao

function validaOpcao()
{
  if (document.formulario.Opcao.value == "2")
  { if(confirm("Deseja que o seu endereço eletrônico seja substituído no banco de dados da ANBID por esse que você acabou de cadastrar?"))
    {
      document.formulario.submit();
    }
  }
  else
  {
    document.formulario.submit();
  }

}
//FUNÇÃO Q SÓ PERMITE A ENTRADA DE NÚMEROS INTEIROS
function Inteiros(e, campo){

  var variavel = campo.value;

  if (document.all) // Internet Explorer
    var tecla = event.keyCode;
  else if(document.layers) // Nestcape
    var tecla = e.which;

  if (((tecla > 47) && (tecla < 58))|| (tecla == 8))  // numeros de 0 a 9
    return true;
  else if (tecla == 13)
    Submit();
  else
    event.keyCode = 0;
}

function CheckLen(Control,MaxLen){
  if (Control.value.length > MaxLen - 1){
    if ((window.event.keyCode != 46)){
	   window.event.keyCode = 0;
	  }
	}
}

function checkLengthPaste(obj) {
   if (clipboardData.getData('Text').length > obj.maxLength) {
      alert('O campo Nome deve ter, no máximo, ' + obj.maxLength + ' caracteres.\nPor favor, fique atento à abreviação do nome.');
   }
}

function disPaste(obj) {
   if (clipboardData.getData('Text').length > 0) {
      alert('Este campo deve ser digitado.');
      event.returnValue = false;
   }
}

// **** FUNÇÕES DE VALIDAÇÃO DE TECLAS ****1
	
//script para validacao de digitacao e salto de campo automatico
// Colocar o foco em determinado campo
function SetarFoco(ind) {
	InicializarIndices();
	if (isNaN(ind) && document.forms[0].elements[ind].type!="hidden" && !document.forms[0].elements[ind].disabled)
		document.forms[0].elements[ind].focus();
	else
		for (;ind<document.forms[0].elements.length;ind++)
			if (document.forms[0].elements[ind].type!="hidden" && !document.forms[0].elements[ind].disabled)
				break;
		if (ind<=document.forms[0].elements.length)
			document.forms[0].elements[ind].focus();
	}

// Verificar qual navegador
function QualNavegador() {
	var s = navigator.appName
	if(s == "Microsoft Internet Explorer") return "IE";
	else if (s == "Netscape") return "NE";
	else return "";
}

// Verificar qual a versão do navegador
function QualVersao() {
	var s = navigator.appVersion;
	if (QualNavegador() == "IE") {
		var i = s.search("MSIE");
		s=s.substring(i+5);
		i=s.search(".");
		return parseInt(s.substring(0,i+1));
	}
	else if (QualNavegador() == "NE")	return parseInt(s.substring(0,1));
	else return 0;
}

function InicializarIndices() {
	if (document.CargaInicial==null) {
		document.CargaInicial=false; // Seta para só fazer uma vez por documento
		var ctrlAnterior=null;
		var IndAnt=0;
		for (var i=0; i<document.forms[0].elements.length;i++)	{
			var e=document.forms[0].elements[i];
			if (e.type!="hidden" && e.type!="image") {
				if (ctrlAnterior != null) ctrlAnterior.IndicePosterior=i;
				ctrlAnterior=e;
				e.Indice=i;
				e.IndiceAnterior=IndAnt;
			}
		}
	}
}

// Setar o evento
function SetarEvento(ctrl, Tam, Tipo, AutoSkip) { // Filtra navegadores conhecidos
	var s = QualNavegador();
	if (s.length==0) return;
	if (s=="IE" && QualVersao()>7) return;
	if (s=="NE" && QualVersao()>5) return;
	if (ctrl.onkeypress==null) {
		if (AutoSkip==null) AutoSkip=true;
		if (Tipo!=null)	Tipo.toUpperCase();
		ctrl.Tam=Tam;
		ctrl.Tipo=Tipo;
		ctrl.AutoSkip=true;
		ctrl.Saltar=false;
		InicializarIndices();
		ctrl.onkeypress=ValidarTecla;
		if (QualNavegador()=="IE" && QualVersao()>=5) ctrl.onkeyup=SaltarCampo;
	}
}

function SaltarCampo(ctrl) {
/*
	if (ctrl==null)	ctrl=this;
	if (ctrl.AutoSkip && ctrl.Saltar)
		if (ctrl.Saltar) {
			ctrl.Saltar=false;
			if (ctrl.IndicePosterior != null) SetarFoco(ctrl.IndicePosterior);
		}
*/
}

// Fazer o salto de campo
function ValidarTecla(evnt) {
	var tk;
    var c;
	// Recebe a tela pressionada
	tk = ((QualNavegador()=="IE") ? event.keyCode : evnt.which);
    c=String.fromCharCode(tk);
	c=c.toUpperCase();
	// Só aceita teclas alfanuméricas. Não aceita teclas de controle
    if(tk<32) return true;
	if (tk>255)	return false;
	

	switch (this.Tipo) {
	case "I":
		if (c<"0" || c>"9") return false;
		break;
	case "I-":
		if ((c<"0" || c>"9") && (c!="-")) return false;
		if ((c=="-") && (this.value.length!=0)) return false;
		break;	
	case "D":
		if ((c<"0" || c>"9") && (c!="/")) return false;
		break;
	case "P":
		var vlcep = this.value
		if (vlcep.length == 5) this.value = vlcep + ".";
			//return false;
		break;
	case "F":
		var vlcpf = this.value
		if (vlcpf.length == 3) this.value = vlcpf + ".";
		if (vlcpf.length == 7) this.value = vlcpf + ".";
		if (vlcpf.length == 11) this.value = vlcpf + "-";
			//return false;
		break;
	case "N":
		if ((c<"0" || c>"9") && (c!="." && c!=","))
			return false;
		if ((c==",") && ((this.value.search(",")>-1) || (this.value.length==0)))
			return false;
		if ((c==".") && (this.value.length==0))
			return false;
		break;
	case "C":
		if (c<"A" || c>"Z") return false;
		break;
	case "S":
		if ((c<"0" || c>"9") && (c<"A" || c>"Z") && (c<"À" || c>"Ý") && (c!=" " && c!="'")) {
			return false;
		}
		break;
	case "A":
		if ((c<"0" || c>"9") && (c<"A" || c>"Z") && (c<"À" || c>"Ý") && (c!="." && c!=" " && c!="'")) {
			return false;
		}
		break;
	case "R":
		if ((c<"0" || c>"9") && (c<"A" || c>"Z") && (c<"À" || c>"Ý") && (c!=" ")) {
			return false;
		}
		break;
	default:
		break;
	}
	this.Saltar=(this.value.length==this.Tam-1);
	if(((QualNavegador()=="IE") && QualVersao()<5) || (QualNavegador()!="IE")) SaltarCampo(this);
	return true;
}

function dataValida(vData) {
	if (vData=="") return true;	
	var arrDt = vData.split("/");
	if (arrDt.length!=3) return false;
	if ((arrDt[0].length!=2)||(arrDt[1].length!=2)||(arrDt[2].length!=4)) return false;
	if (isNaN(arrDt[0])||isNaN(arrDt[1])||isNaN(arrDt[2])) return false;
	if ((arrDt[0]<0)||(arrDt[0]>31)) return false;
	if ((arrDt[1]<0)||(arrDt[1]>12)) return false;
	if ((arrDt[2]<1980)||(arrDt[2]>2070)) return false;
	if (((arrDt[1]==4)||(arrDt[1]==6)||(arrDt[1]==9)||(arrDt[1]==11))&&(arrDt[0]>30)) return false;
	if ((arrDt[1]==2)&&((arrDt[2]%4!=0)&&(arrDt[0]>28)||((arrDt[2]%4==0)&&(arrDt[0]>29)))) return false;
	return true;
}


//função para fechar a janela sem pergunta
function closeWindow() {
	var ie7 = (document.all && !window.opera && window.XMLHttpRequest) ? true : false;
	if (ie7) {
		window.open('','_parent','');
		window.close();
	} else {
		this.focus();
		self.opener = this;
		self.close();
	}
}



//=================================================================================================
//Funções para chamada de AJAX

function iniAJAX(a) {
	//Acrescenta a url base com http
	url = "/inc/ajax/" + a;

	//Cria um novo elemento JS
	var jsel = document.createElement('SCRIPT');
	jsel.type = 'text/javascript';
	jsel.src = url;
	
	//Adiciona o elemento JS (portanto executando a chamada "AJAX)
	document.body.appendChild(jsel);
}
//=================================================================================================

//=================================================================================================
//Função para manipular os dados do tipo de avulso e preencher a combo de categoria
function cboTipoAvulso(a, b, c, d, e) {

	//Valores da combo selecionada
	tipoPartic = a;

	if (tipoPartic!="") {

		if (document.formulario.instPart) {
			if (tipoPartic=="P") {
				document.formulario.instPart.disabled = false;
			} else {
				document.formulario.instPart.disabled = true;
			}
		}
		
		//Define mensagens para notificar o usuário que algo está sendo processado
		document.formulario.categoria.disabled = false;
		document.formulario.categoria.length = 0;
		document.formulario.categoria.options.add(new Option('Carregando dados, aguarde...',''));

		//Valores da inscrição
		codCategProf = b;
		codTipoCertificacao = c;
		origemInscricao = d;
		codProf = e;

		//Define a url e os parametros para chamar a página do asp
		rtiURL = "cboCategoria.asp?tipoPartic="+tipoPartic+"&codCategProf="+codCategProf+"&codTipoCertificacao="+codTipoCertificacao+"&origemInscricao="+origemInscricao+"&codProf="+codProf;

		//Chama função AJAX, que executa a página ASP
		iniAJAX(rtiURL);
		
	} else {
	
		if (document.formulario.instPart) {
			document.formulario.instPart.disabled = true;
			//document.formulario.instPart.selectedIndex = -1;
		}
	
		//Exibe mensagem na combo
		document.formulario.categoria.disabled = true;
		//document.formulario.categoria.length = 0;
		//document.formulario.categoria.options.remove(0);
		//document.formulario.categoria.options.add(new Option('Selecione...',''));

	}
}

//=================================================================================================
//Função para verifica se o profissional pode se agendar na data selecionada
function verDataAgendamento(codInscricao, codIdtCT, dataTeste, horIniTeste) {

	//Define mensagens para notificar o usuário que algo está sendo processado
	//document.formulario.categoria.options.add(new Option('Carregando dados, aguarde...',''));
	//alert("codInscricao: " + codInscricao + " - codCT: " + codIdtCT + " - dataTeste: " + dataTeste + " - horIniTeste: " + horIniTeste);

	//Define a url e os parametros para chamar a página do asp
	rtiURL = "verDataAgendamento.asp?codInscricao="+codInscricao+"&codIdtCT="+codIdtCT+"&dataTeste="+dataTeste+"&horIniTeste="+horIniTeste;

	//Chama função AJAX, que executa a página ASP
	iniAJAX(rtiURL);

}

