<!--

function TESTA(obj,CTYPE)
{
  var CNUMB = obj.value;
  if(Verify(CNUMB, CTYPE))
  {
   // alert(CTYPE+" válido!");
  }
  else
  {
    alert(CTYPE+" inválido!");
    obj.value="";
  }
  return;
}

function ClearStr(str, char2)
{
  while((cx=str.indexOf(char2))!=-1)
  {		
    str = str.substring(0,cx)+str.substring(cx+1);
  }
  return(str);
}

function ParseNumb(c)
{
  c=ClearStr(c,'-');
  c=ClearStr(c,'/');
  c=ClearStr(c,',');
  c=ClearStr(c,'.');
  c=ClearStr(c,'(');
  c=ClearStr(c,')');
  c=ClearStr(c,' ');
  if((parseFloat(c) / c != 1))
  {
    if(parseFloat(c) * c == 0)
    {
      return(c);
    }
    else
    {
      return(0);
    }
  }
  else
  {
    return(c);
  }
}

function Verify(CNUMB,CTYPE)
{
  CNUMB=ParseNumb(CNUMB)
  if(CNUMB == 0)
  {
    return(false);
  }
  else
  {
    g=CNUMB.length-2;
    if(TestDigit(CNUMB,CTYPE,g))
    {
      g=CNUMB.length-1;
      if(TestDigit(CNUMB,CTYPE,g))
      {	
        return(true);
      }
      else
      {
        return(false);
      }
    }
    else
    {
      return(false);
    }
  }
}

function TestDigit(CNUMB,CTYPE,g)
{
  var dig=0;
  var ind=2;
  for(f=g;f>0;f--)
  {
    dig+=parseInt(CNUMB.charAt(f-1))*ind;
    if (CTYPE=='CNPJ')
    { if(ind>8) {ind=2} else {ind++} }
    else
    { ind++ }
  }
  dig%=11;
  if(dig<2)
  {
    dig=0;
  }
  else
  {
    dig=11-dig;
  }
  if(dig!=parseInt(CNUMB.charAt(g)))
  {
    return(false);
  }
  else
  {
    return(true);
  }
}

function isDate(objData){

var DateToCheck =  objData.value;
if(DateToCheck==""){return true;}
var m_strDate = FormatDate(DateToCheck,'dd/mm/yyyy');

if(m_strDate==""){
alert("Data Inválida!");
objData.focus();
objData.value="";
return false;
}
var m_arrDate = m_strDate.split("/");
var m_DAY = m_arrDate[0];
var m_MONTH = m_arrDate[1];
var m_YEAR = m_arrDate[2];
if(m_YEAR.length > 4){return false;}
m_strDate = m_MONTH + "/" + m_DAY + "/" + m_YEAR;
var testDate=new Date(m_strDate);
if(testDate.getMonth()+1==m_MONTH){
m_strDate = m_DAY  + "/" + m_MONTH + "/" + m_YEAR;
objData.value=m_strDate;

return true;

} 
else{
alert("Data Inválida!");
objData.focus();
objData.value="";
return false;
}
}//end function




function FormatDate(DateToFormat,FormatAs){

if(DateToFormat==""){return"";}
if(!FormatAs){FormatAs="dd/mm/yyyy";}

var strReturnDate;
FormatAs = FormatAs.toLowerCase();
DateToFormat = DateToFormat.toLowerCase();
var arrDate
var arrMonths = new Array("January","February","March","April","May","June","July","August","September","October","November","December");
var strMONTH;
var Separator;

while(DateToFormat.indexOf("st")>-1){
DateToFormat = DateToFormat.replace("st","");
}

while(DateToFormat.indexOf("nd")>-1){
DateToFormat = DateToFormat.replace("nd","");
}

while(DateToFormat.indexOf("rd")>-1){
DateToFormat = DateToFormat.replace("rd","");
}

while(DateToFormat.indexOf("th")>-1){
DateToFormat = DateToFormat.replace("th","");
}

if(DateToFormat.indexOf(".")>-1){
Separator = ".";
}

if(DateToFormat.indexOf("-")>-1){
Separator = "-";
}


if(DateToFormat.indexOf("/")>-1){
Separator = "/";
}

if(DateToFormat.indexOf(" ")>-1){
Separator = " ";
}

arrDate = DateToFormat.split(Separator);
DateToFormat = "";
	for(var iSD = 0;iSD < arrDate.length;iSD++){
		if(arrDate[iSD]!=""){
		DateToFormat += arrDate[iSD] + Separator;
		}
	}
DateToFormat = DateToFormat.substring(0,DateToFormat.length-1);
arrDate = DateToFormat.split(Separator);

if(arrDate.length < 3){
return "";
}

var DAY = arrDate[0];
var MONTH = arrDate[1];
var YEAR = arrDate[2];




if(parseFloat(arrDate[1]) > 12){
DAY = arrDate[1];
MONTH = arrDate[0];
}

if(parseFloat(DAY) && DAY.toString().length==4){
YEAR = arrDate[0];
DAY = arrDate[2];
MONTH = arrDate[1];
}


for(var iSD = 0;iSD < arrMonths.length;iSD++){
var ShortMonth = arrMonths[iSD].substring(0,3).toLowerCase();
var MonthPosition = DateToFormat.indexOf(ShortMonth);
	if(MonthPosition > -1){
	MONTH = iSD + 1;
		if(MonthPosition == 0){
		DAY = arrDate[1];
		YEAR = arrDate[2];
		}
	break;
	}
}

var strTemp = YEAR.toString();
if(strTemp.length==2){

	if(parseFloat(YEAR)>40){
	YEAR = "19" + YEAR;
	}
	else{
	YEAR = "20" + YEAR;
	}

}


	if(parseInt(MONTH)< 10 && MONTH.toString().length < 2){
	MONTH = "0" + MONTH;
	}
	if(parseInt(DAY)< 10 && DAY.toString().length < 2){
	DAY = "0" + DAY;
	}
	switch (FormatAs){
	case "dd/mm/yyyy":
	return DAY + "/" + MONTH + "/" + YEAR;
	case "mm/dd/yyyy":
	return MONTH + "/" + DAY + "/" + YEAR;
	case "dd/mmm/yyyy":
	return DAY + " " + arrMonths[MONTH -1].substring(0,3) + " " + YEAR;
	case "mmm/dd/yyyy":
	return arrMonths[MONTH -1].substring(0,3) + " " + DAY + " " + YEAR;
	case "dd/mmmm/yyyy":
	return DAY + " " + arrMonths[MONTH -1] + " " + YEAR;	
	case "mmmm/dd/yyyy":
	return arrMonths[MONTH -1] + " " + DAY + " " + YEAR;
	}

return DAY + "/" + strMONTH + "/" + YEAR;;

} //End Function

function somenteNumero(ev)
{
		var tecla = (window.Event) ? ev.which : event.keyCode;
		
		if (tecla > 47 && tecla < 58) // numeros de 0 a 9
				return true;
			else
				{
						if( tecla==8 || tecla==0 )
							return true;
							else{
								
								return false;}
						}
}
function colarsem(){
var str = clipboardData.getData("Text");	
var novastr="";
	for(var i=0; i < str.length;i++)
	{
	if(!(str.charCodeAt(i) == 34 || str.charCodeAt(i) == 39) )
	{
		novastr=novastr+str.substring(i,i+1);
	}
	}
	clipboardData.setData("Text",novastr);
	return true;
}

function proxCampo(cmpAtual){
 frm = eval(frm);
 if (cmpAtual.value.length == cmpAtual.maxLength){
  with(frm){
  for(var i=0;i<length;i++)
   if (cmpAtual.name == elements[i].name)
    if (i+1 != length)
	 elements[i+1].focus();}}
}

// ********************************** Início Rotina de Validação ****************************************************

var tMax = 0, tMin = 0, tRange = "", ok = false, erro = 0;
var bCPadrao = "#000000", bWPadrao = "1px", cPadrao = "#373737";
var bC = "red", bW = "1px", cor = "#E41A1A";
var MsgErro = -1;
var nomeCampoFocus = "NOTHING";
strErro = new String();
var flagCor=0;
var borderPadrao;
function corErro(campo){
 if (flagCor==0)
 {
	borderPadrao = campo.style.borderColor;
    bWPadrao  = campo.style.borderWidth;
   }	
 flagCor=1;
 with(campo.style){
   borderWidth = bW;
  borderColor = "red";
color = cor
  ;}}

function getRange(nfoCampo){
 tRange = nfoCampo.substr(4,nfoCampo.indexOf('-',4)-nfoCampo.indexOf('-')-1);
 with(tRange){
 var sep = indexOf(';')
 if (sep == -1){
  tMin = 0;
  tMax = tRange;}
 else{
  tMin = parseInt(substring(0,sep)); 
  tMax = parseInt(substr(sep+1,length));}}}

function getRequerido(nfoCampo,posI){
 return parseInt(nfoCampo.substr(posI,1));}


function getMsgErro(nfoCampo,posI){
 return parseInt(nfoCampo.substr(posI,2));}


function NzL(campo){
 if (String(campo).length == 0)
  return false;
 else
  return true;}


function trim(strText) { 
    
  while (strText.substring(0,1) == ' ') 
    strText = strText.substring(1, strText.length);
    while (strText.substring(strText.length-1,strText.length) == ' ')
      strText = strText.substring(0, strText.length-1);
   return strText;
} 
function semErro(Elemento)
{

with(Elemento){
 if (type != 'image' && type != 'submit' && type != 'button' && type != 'reset' && type != 'hidden'){
 style.borderWidth = bWPadrao;
 style.borderColor = borderPadrao;
 style.color = cPadrao;}
 }
}
function valida_Form(form1){ 
// VALIDA O FORM, E DA O SUBMIT SE TUDO ESTIVER CERTO
//Para o campo ser considerado obrigatório no form e somente necessário colocar
// o atributo obrigatório na tag com valor="true"
var str="";
var str2="";
var qtd=0;
for (i=0;i<form1.length;i++)
{
	if (form1[i].getAttribute("obrigatorio")=="true")
	{
		if ((trim(form1[i].value)=="") ||  (form1[i].selectedIndex=="0") )
		{
			str=str + " "+form1[i].getAttribute("nome")+",";
			
			//corErro(form1[i]);
			if (qtd==0)
				form1[i].focus();
			qtd+=1;
		}//else semErro(form1[i]);
	
	}
	if(form1[i].getAttribute("confirmar")!= null){
	    if (form1[i].value!=document.getElementById(form1[i].getAttribute("confirmar")).value){
	    str2 =form1[i].getAttribute("msgConfirmar");
		}
	}

}

if(qtd==1)
{

str= str.substr(0,str.length-1);
str="O campo" +str + " é obrigatório.";
alert(str);

return false;
}
if(qtd>1)
{

str= str.substr(0,str.length-1);
str="Os campos" +str + " são obrigatórios.";
str=str.substr(0,str.lastIndexOf(","))+' e'+ str.substr(str.lastIndexOf(",")+1,str.length);

alert(str);
return false;
}
if(str2!=''){
  
  alert(str2);
  return false;
}
form1.submit();
return true;
}
function verificaTamanho(area,maxTamanho){

if ( area.value.length >= maxTamanho)
{
   event.keyCode = 0;
}

}
function verificaCola(area,maxTamanho){
if ((area.value.length + clipboardData.getData("Text").length) >= maxTamanho)
{
  event.returnValue=false;
}

}
function submitFormX(origem,destino,parametro)
{

	var pos;
	var nomepar;
	pos=parametro.split("&");
	for(var i=0; i<pos.length;i++)
	{
		nomepar=pos[i].split("=");
		var newElem =document.createElement("input");
		newElem.name=nomepar[0];
		newElem.value=nomepar[1];
		newElem.type="hidden";
		origem.appendChild(newElem);
	}
	origem.appendChild(newElem);
	origem.action=destino;
	origem.method="post";
	origem.submit();
}





function valida_FormSem(form1){ 
// VALIDA O FORM, E DA O SUBMIT SE TUDO ESTIVER CERTO
//Para o campo ser considerado obrigatório no form e somente necessário colocar
// o atributo obrigatório na tag com valor="true"
var str="";
var qtd=0;
	
for (i=0;i<form1.length;i++)
{
	
if (form1[i].getAttribute("obrigatorio")=="true")
{
	
	if ((trim(form1[i].value)=="") ||  (form1[i].selectedIndex=="0") )
	{
		str=str + " "+form1[i].getAttribute("nome")+",";
		//corErro(form1[i]);
		if (qtd==0)
			form1[i].focus();
		qtd+=1;
	}//else semErro(form1[i]);

}


}

if(qtd==1)
{

str= str.substr(0,str.length-1);
str="O campo" +str + " é obrigatório.";
alert(str);

return false;
}
if(qtd>1)
{

str= str.substr(0,str.length-1);
str="Os campos" +str + " são obrigatórios.";
str=str.substr(0,str.lastIndexOf(","))+' e'+ str.substr(str.lastIndexOf(",")+1,str.length);

alert(str);
return false;
}
return true;
}
	function dataMenor(dtmenor,dtfinal)
	{
	var dataMenor = new Date(dtmenor.value.substring(3, 5)+'/'+dtmenor.value.substring(0, 2)+'/'+dtmenor.value.substring(6, 10));
    var dataFinal = new Date(dtfinal.value.substring(3, 5)+'/'+dtfinal.value.substring(0, 2)+'/'+dtfinal.value.substring(6, 10))	;		
	if (dataMenor>dataFinal) 
	 {
	 alert(" A data inicial tem que ser maior que a data final!");
	 return false;
	 }
	else
	{ 
	
	return true;
	  
	}
	  
	
	}
	
	
	
	
	


function somenteDecimal(ev)
		{
			
			var keypress = (window.Event) ? ev.which : event.keyCode;
	
			
					caracteres = '01234567890,';
					
				
					
					if ((caracteres.search(String.fromCharCode (keypress))!=-1) )
						{
							
							return true;
						}
					else
						{
						
							if( keypress==8 || keypress==0 )
							return true;
							else{
								return false;}
						}
	        
		}	
	
	
	function dataMenor2(dtmenor,dtfinal)
	{
	var dataMenor = new Date(dtmenor.value.substring(3, 5)+'/'+dtmenor.value.substring(0, 2)+'/'+dtmenor.value.substring(6, 10));
    var dataFinal = new Date(dtfinal.value.substring(3, 5)+'/'+dtfinal.value.substring(0, 2)+'/'+dtfinal.value.substring(6, 10))	;		
	if (dataMenor>dataFinal) 
	 {
	// alert(" A data inicial tem que ser maior que a data final!");
	 return false;
	 }
	else
	{ 
	
	return true;
	  
	}
	  
	
	}
function currencyFormat(fld, milSep, decSep, e) {
var sep = 0;
var key = '';
var i = j = 0;
var len = len2 = 0;
var strCheck = '0123456789';
var aux = aux2 = '';
var whichCode = (window.Event) ? e.which : e.keyCode;
if (whichCode == 13) return true;  // Enter
if (whichCode == 8) return true;  // Delete (Bug fixed)
key = String.fromCharCode(whichCode);  // Get key value from key code
if (strCheck.indexOf(key) == -1) return false;  // Not a valid key
len = fld.value.length;
for(i = 0; i < len; i++)
if ((fld.value.charAt(i) != '0') && (fld.value.charAt(i) != decSep)) break;
aux = '';
for(; i < len; i++)
if (strCheck.indexOf(fld.value.charAt(i))!=-1) aux += fld.value.charAt(i);
aux += key;
len = aux.length;
if (len == 0) fld.value = '';
if (len == 1) fld.value = '0'+ decSep + '0' + aux;
if (len == 2) fld.value = '0'+ decSep + aux;
if (len > 2) {
aux2 = '';
for (j = 0, i = len - 3; i >= 0; i--) {
if (j == 3) {
aux2 += milSep;
j = 0;
}
aux2 += aux.charAt(i);
j++;
}
fld.value = '';
len2 = aux2.length;
for (i = len2 - 1; i >= 0; i--)
fld.value += aux2.charAt(i);
fld.value += decSep + aux.substr(len - 2, len);
}
return false;
}