function SetAllCheckBoxes(FormName, FieldName, CheckValue){
		if(!document.forms[FormName])
			return;
		var objCheckBoxes = document.forms[FormName].elements[FieldName];
		if(!objCheckBoxes)
			return;
		var countCheckBoxes = objCheckBoxes.length;
		if(!countCheckBoxes)
			objCheckBoxes.checked = CheckValue;
		else
			// set the check value for all check boxes
			for(var i = 0; i < countCheckBoxes; i++)
				objCheckBoxes[i].checked = CheckValue;
	}
	
	//==========================================
// Check All boxes
//==========================================
function CheckAll(fmobj) {
  for (var i=0;i<fmobj.elements.length;i++) {
    var e = fmobj.elements[i];
    if ( (e.name != 'allbox') && (e.type=='checkbox') && (!e.disabled) ) {
      e.checked = fmobj.allbox.checked;
    }
  }
}

//==========================================
// Check all or uncheck all?
//==========================================
function DesmarcarTodos(plike) {
	var fmobj = document.forms(0);
	
  var TotalBoxes = 0;
  var TotalOn = 0;
  var variavel;
  plike = plike + '';
  for (var i=0;i<fmobj.elements.length;i++) {
    var e = fmobj.elements[i];
    if (e.type=='checkbox') {
      if (plike == ''){
				e.checked = false;
      }else{
				variavel = e.name;
	      if (variavel.indexOf(plike) >= 0){
					e.checked = false;
	      }
      }
    }
  }
}
function MarcarTodos(plike) {
	var fmobj = document.forms(0);
	
  var TotalBoxes = 0;
  var TotalOn = 0;
  var variavel;
  plike = plike + '';
  
  for (var i=0;i<fmobj.elements.length;i++) {
    var e = fmobj.elements[i];
    if (e.type=='checkbox') {
      if (plike == ''){
				e.checked = true;
      }else{
				variavel = e.name;
	      if (variavel.indexOf(plike) >= 0){
					e.checked = true;
	      }
      }
    }
  }
}

  //function keyRestrict(e, validchars) {
	//	var key='', keychar='';
	//	key = getKeyCode(e);
	//	if (key == null) return true;
	//	keychar = String.fromCharCode(key);
	//	keychar = keychar.toLowerCase();
	//	validchars = validchars.toLowerCase();
	//	if (validchars.indexOf(keychar) != -1)
	//		return true;
	//	if ( key==null || key==0 || key==8 || key==9 || key==13 || key==27 )
	//		return true;
	//	return false;
		//onKeyPress="return keyRestrict(event,'1234567890')"
	//}

			function AbrirJanela(pagina,nome,largura,altura) {

				//pega a resolução do visitante
				w = screen.width;
				h = screen.height;

				//divide a resolução por 2, obtendo o centro do monitor
				meio_w = w/2;
				meio_h = h/2;

				//diminui o valor da metade da resolução pelo tamanho da janela, fazendo com q ela fique centralizada
				altura2 = altura/2;
				largura2 = largura/2;
				meio1 = meio_h-altura2;
				meio2 = meio_w-largura2;

				//abre a nova janela, já com a sua devida posição
				window.open(pagina,nome,'height=' + altura + ', width=' + largura + ', top='+meio1+', left='+meio2+''); 
			}
	
function Ajuda(){
		
		var tamW = 700;
		var tamH = 480;
		
		var pW = screen.Width - tamW;
		var pH = screen.Height - tamH;
		var ret
		var url = '../Ajuda/ajuda.aspx';
		ret = window.showModalDialog(url,  null, 'dialogHeight: ' + tamH + 'px; dialogWidth:'+ tamW +'px;resizable: No;center:Yes;status: No;scroll:no');
		
}

		
	function getKeyCode(e){
		if (window.event)
	    return window.event.keyCode;
		else if (e)
	    return e.which;
		else
	    return null;
	}
	
function Get_Cookie(name) { 
   var start = document.cookie.indexOf(name+"="); 
   var len = start+name.length+1; 
   if ((!start) && (name != document.cookie.substring(0,name.length))) return null; 
   if (start == -1) return null; 
   var end = document.cookie.indexOf(";",len); 
   if (end == -1) end = document.cookie.length; 
   return unescape(document.cookie.substring(len,end)); 
} 

function Set_Cookie(name,value,expires,path,domain,secure) { 
    var cookieString = name + "=" +escape(value) + 
       ( (expires) ? ";expires=" + expires.toGMTString() : "") + 
       ( (path) ? ";path=" + path : "") + 
       ( (domain) ? ";domain=" + domain : "") + 
       ( (secure) ? ";secure" : ""); 
    document.cookie = cookieString; 
} 

function Delete_Cookie(name,path,domain) { 
   if (Get_Cookie(name)) document.cookie = name + "=" + 
      ( (path) ? ";path=" + path : "") + 
      ( (domain) ? ";domain=" + domain : "") + 
      ";expires=Thu, 01-Jan-70 00:00:01 GMT"; 
}

function carregando(){
			try{
				conteudo.document.write('<DIV>');
				conteudo.document.write('<table bgcolor="buttonface" style="BORDER: #000000 1px solid;" align=center height=70 width=50% cellpadding=0 cellspacing=0 border=0>');
				conteudo.document.write('	<tr>');
				conteudo.document.write('		<td width=100% align=center valign=middle>');
				conteudo.document.write('<b>Carregando pagina, aguarde....</b>');
				conteudo.document.write('		</td>');
				conteudo.document.write('	</tr>');
				conteudo.document.write('</table>');
				conteudo.document.write('</DIV>');
			}catch(e){}
}
function troca(stexto,sprocura,stroca){
	for (c=0;c<stexto.length;c++)
	{
		stexto = stexto.replace(sprocura,stroca)
	}
	return stexto;
}
function valida_data(pdata)
{
	//if (ltrim(pdata) != '')	{	
	if (pdata != '')	{			
		if (validate_date(pdata)){
			return true;
		}else{
			return false;
		}
	}else{
		return false;
	}
}

//Função para formatação genérica de campos
function Formatar(fsValor, foForm, foNome, fsFormato) { 

	var piLoop; 
	var psPalavra		= '';
	var psResposta	= ''; 
	var piTamanho		= 0; 
	var pParte_i		= '';
	var pParte_f		= '';
	var intDecimais = 2;
	
	intDecimais = 2;
	
	
	
if (window.event.keyCode != 9 && window.event.keyCode != 16){
	if (fsFormato == "cgc") fsFormato = "cnpj";
		if (window.event.keyCode != 8 &&  window.event.keyCode != 37 && window.event.keyCode != 39 && window.event.keyCode != 46) { 
			for(piLoop = 0; piLoop <= (fsValor.length-1); piLoop++) {
				switch (fsFormato) {
					case 'data': 
						if (fsValor.charAt(piLoop) != '/' && fsValor.charAt(piLoop) >= '0' && fsValor.charAt(piLoop) <= '9')
							psPalavra = psPalavra + fsValor.charAt(piLoop); 
						break; 
          case 'hora': 
            if (fsValor.charAt(piLoop) != ':'  && fsValor.charAt(piLoop) >= '0' && fsValor.charAt(piLoop) <= '9') 
              psPalavra = psPalavra + fsValor.charAt(piLoop); 
            break; 
					case 'hora2': 
            if (fsValor.charAt(piLoop) != ':'  && fsValor.charAt(piLoop) >= '0' && fsValor.charAt(piLoop) <= '9') 
              psPalavra = psPalavra + fsValor.charAt(piLoop); 
            break;             
          case 'telefone': 
            if (fsValor.charAt(piLoop) >= '0' && fsValor.charAt(piLoop) <= '9')
							psPalavra = psPalavra + fsValor.charAt(piLoop); 
            break; 
          case 'moeda': 
            if (fsValor.charAt(piLoop) != ',' && fsValor.charAt(piLoop) >= '0' && fsValor.charAt(piLoop) <= '9')
              psPalavra = psPalavra + fsValor.charAt(piLoop); 
	          break; 
          case 'cpf': 
            if (fsValor.charAt(piLoop) != '.' && fsValor.charAt(piLoop) != '-' && fsValor.charAt(piLoop) >= '0' && fsValor.charAt(piLoop) <= '9')
              psPalavra = psPalavra + fsValor.charAt(piLoop); 
            break; 
          case 'cnpj': 
            if (fsValor.charAt(piLoop) >= '0' && fsValor.charAt(piLoop) <= '9')
              psPalavra = psPalavra + fsValor.charAt(piLoop); 
            break; 
          case 'cnpj_filial': 
            if (fsValor.charAt(piLoop) >= '0' && fsValor.charAt(piLoop) <= '9')
              psPalavra = psPalavra + fsValor.charAt(piLoop); 
            break; 
          case 'cep': 
            if (fsValor.charAt(piLoop) != '-' && fsValor.charAt(piLoop) >= '0' && fsValor.charAt(piLoop) <= '9')
              psPalavra = psPalavra + fsValor.charAt(piLoop); 
            break; 
          case 'numero': 
            if (fsValor.charAt(piLoop) >= '0' && fsValor.charAt(piLoop) <= '9'){
              psPalavra = psPalavra + fsValor.charAt(piLoop); 
            }

            if (fsValor.charAt(piLoop) == '-' && psPalavra == ''){
              psPalavra = psPalavra + fsValor.charAt(piLoop); 
            }
              
            break; 

        } 
      } 
      for(piLoop=0; piLoop <= (psPalavra.length-1); piLoop++) {
				switch (fsFormato) {
					case 'data': 
						if (piLoop == 2) psResposta = psResposta + '/' + psPalavra.charAt(piLoop); 
						if (piLoop == 4) psResposta = psResposta + '/' + psPalavra.charAt(piLoop); 
						if (piLoop != 2 && piLoop != 4) psResposta = psResposta + psPalavra.charAt(piLoop); 
						piTamanho = 10; 
		        break; 
					case 'hora': 
						if (piLoop == 2) 
							psResposta = psResposta + ':' + psPalavra.charAt(piLoop) 
						else 
							psResposta = psResposta + psPalavra.charAt(piLoop); 
							piTamanho = 5; 
						break; 
					case 'hora2': 
						if (piLoop == 3) 
							psResposta = psResposta + ':' + psPalavra.charAt(piLoop) 
						else 
							psResposta = psResposta + psPalavra.charAt(piLoop); 
							piTamanho = 6; 
						break; 						
          case 'telefone': 
							psResposta = psResposta + psPalavra.charAt(piLoop); 
							piTamanho = 9; 
							break; 
          case 'moeda': 
						if (psPalavra.length < 14){
							psResposta = psResposta + psPalavra.charAt(piLoop); 
							piTamanho = 14; 
						}else{
							psResposta = psPalavra;
						}
						break; 
					case 'cpf': 
						if (psPalavra.length < 14){
							psResposta = psResposta + psPalavra.charAt(piLoop); 
							piTamanho = 14; 
						}else{
							psResposta = psPalavra;
						}
						break; 
          case 'cnpj': 
							psResposta = psResposta + psPalavra.charAt(piLoop); 
							piTamanho = 19; 
							break; 
          case 'cnpj_filial':
							psResposta = psResposta + psPalavra.charAt(piLoop); 
							piTamanho = 7; 
							break; 
							
          case 'cep': 
            if (piLoop == 5) psResposta = psResposta + '-' + psPalavra.charAt(piLoop); 
            if (piLoop != 5) psResposta = psResposta + psPalavra.charAt(piLoop); 
            piTamanho = 9;
            break; 
          case 'numero': 
            psResposta = psResposta + psPalavra.charAt(piLoop); 
            piTamanho = 50;
            break; 
        } 
      }

	//--- Formata Moeda
	if (fsFormato == 'moeda' && psResposta.length > intDecimais){
		for(piLoop=intDecimais; piLoop < (psResposta.length); piLoop++){
			pParte_i = psResposta.substring(0, psResposta.length- piLoop );
			pParte_f = psResposta.substring(psResposta.length-piLoop, psResposta.length);
			if (piLoop == intDecimais)
			{
				psResposta = pParte_i + ',' + pParte_f ;
			}
			else
			{
				psResposta = pParte_i + '.' + pParte_f ;
			}
			piLoop = piLoop + 3;
		}
	}
	//--- Fim Formata Moeda
			
	//--- Formata CNPJ
	if (fsFormato == 'cnpj' && psResposta.length > 6){
		//psResposta = psResposta.substring(0, 19);
		pParte_i = psResposta.substring(0, psResposta.length - 2 );
		pParte_f = psResposta.substring(psResposta.length - 2, psResposta.length);
		psResposta = pParte_i + '-' + pParte_f ;
		pParte_i = psResposta.substring(0, psResposta.length - 7 );
		pParte_f = psResposta.substring(psResposta.length - 7, psResposta.length);
		psResposta = pParte_i + '/' + pParte_f ;
		for(piLoop=11; piLoop < (psResposta.length); piLoop++){
			pParte_i = psResposta.substring(0, psResposta.length- piLoop );
			pParte_f = psResposta.substring(psResposta.length-piLoop, psResposta.length);
			psResposta = pParte_i + '.' + pParte_f ;
			piLoop = piLoop + 3;
		}
	}
	//--- Fim Formata CNPJ
			
	//--- Formata CNPJ_FILIAL
	if (fsFormato == 'cnpj_filial' && psResposta.length > 4){
		psResposta = psResposta.substring(0, 7);
		pParte_i = psResposta.substring(0, psResposta.length - 2 );
		pParte_f = psResposta.substring(psResposta.length - 2, psResposta.length);
		psResposta = pParte_i + '-' + pParte_f ;
	}
	//--- Fim Formata CNPJ_FILIAL

	//--- Formata Telefone
	if (fsFormato == 'telefone' && psResposta.length > 4){
		psResposta = psResposta.substring(0, 8);
		pParte_i = psResposta.substring(0, psResposta.length - 4 );
		pParte_f = psResposta.substring(psResposta.length - 4, psResposta.length);
		psResposta = pParte_i + '-' + pParte_f ;
	}
	//--- Fim Formata Telefone
		
	//--- Formata CPF
	if (fsFormato == 'cpf' && psResposta.length > 2){
		psResposta = psResposta.substring(0, 11);
		pParte_i = psResposta.substring(0, psResposta.length - 2 );
		pParte_f = psResposta.substring(psResposta.length - 2, psResposta.length);
		psResposta = pParte_i + '-' + pParte_f ;
			
		for(piLoop=6; piLoop < (psResposta.length); piLoop++){
			pParte_i = psResposta.substring(0, psResposta.length- piLoop );
			pParte_f = psResposta.substring(psResposta.length-piLoop, psResposta.length);
			psResposta = pParte_i + '.' + pParte_f ;
			piLoop = piLoop + 3;
		}
	}
	//--- Fim Formata CPF

	if (fsFormato == 'moeda'){
		document.forms[foForm].elements[foNome].value = psResposta.substring(0, psResposta.length);
	}else{
		document.forms[foForm].elements[foNome].value = psResposta.substring(0, piTamanho);
	}
} 
}
} 

function validate_date(sdata)
{
if (sdata ==''){return true;}

day2 = sdata.substr(0,2);
month2 = sdata.substr(3,2);
year2 = sdata.substr(6,4);

if (year2 < 1900){
	return false;
}


if ((sdata.substr(2,1) != "/") || (sdata.substr(5,1) != "/"))
{
	day2 = "";
	month2 = "";
	year2 = "";
}

var DayArray = new Array(31,28,31,30,31,30,31,31,30,31,30,31);
var MonthArray = new Array("01","02","03","04","05","06","07","08","09","10","11","12");
var inpDate = day2 + month2 + year2;
var filter=/^[0-9]{2}[0-9]{2}[0-9]{4}$/;

//Check ddmmyyyy date supplied
if (! filter.test(inpDate))
  {
  return false;
  }
/* Check Valid Month */
filter=/01|02|03|04|05|06|07|08|09|10|11|12/;
if (! filter.test(month2))
  {
  return false;
  }
/* Check For Leap Year */
var N = Number(year2);
if ( ( N%4==0 && N%100 !=0 ) || ( N%400==0 ) )
  	{
   DayArray[1]=29;
  	}
/* Check for valid days for month */
for(var ctr=0; ctr<=11; ctr++)
  	{
   if (MonthArray[ctr]==month2)
   	{
      if (day2<= DayArray[ctr] && day2 >0 )
        {
        inpDate = day2 + '/' + month2 + '/' + year2;
        return true;
        }
      else
        {
        return false;
        }
   	}
   }
}

function validaCNPJ(CNPJ) {
	
		if (CNPJ.length == 0){
			return true;
		}else{
			erro = new String;
			if (CNPJ.length < 18) erro += "CNPJ irregular ! \n\n";
			if ((CNPJ.charAt(2) != ".") || (CNPJ.charAt(6) != ".") || (CNPJ.charAt(10) != "/") || (CNPJ.charAt(15) != "-")){
				if (erro.length == 0) erro += "CNPJ inválido ! \n\n";
			}
			//substituir os caracteres que nao sao numeros
			if(document.layers && parseInt(navigator.appVersion) == 4){
				x = CNPJ.substring(0,2);
				x += CNPJ.substring(3,6);
				x += CNPJ.substring(7,10);
				x += CNPJ.substring(11,15);
				x += CNPJ.substring(16,18);
				CNPJ = x;	
			} else {
				CNPJ = CNPJ.replace(".","");
				CNPJ = CNPJ.replace(".","");
				CNPJ = CNPJ.replace("-","");
				CNPJ = CNPJ.replace("/","");
			}
			var nonNumbers = /\D/;
			if (nonNumbers.test(CNPJ)) erro += "A verificacao de CNPJ suporta apenas numeros! \n\n";	
			var a = [];
			var b = new Number;
			var c = [6,5,4,3,2,9,8,7,6,5,4,3,2];
			for (i=0; i<12; i++){
				a[i] = CNPJ.charAt(i);
				b += a[i] * c[i+1];
			}
			if ((x = b % 11) < 2) { a[12] = 0 } else { a[12] = 11-x }
			b = 0;
			for (y=0; y<13; y++) {
				b += (a[y] * c[y]); 
			}
			if ((x = b % 11) < 2) { a[13] = 0; } else { a[13] = 11-x; }
			if ((CNPJ.charAt(12) != a[12]) || (CNPJ.charAt(13) != a[13])){
				erro +="Digito verificador com problema!";
			}
			if (erro.length > 0){
				alert(erro);
				return false;
			} else {
				//alert("CNPJ valido!");
			}
			return true;
		}
	}
	
	
	function ajaxGet(url,elemento_retorno,exibe_carregando){
    var ajax1 = pegaAjax();
    if(ajax1){
        url = antiCacheRand(url)
        ajax1.onreadystatechange = ajaxOnReady
        ajax1.open("GET", url ,true);
        ajax1.setRequestHeader("Cache-Control", "no-cache");
        ajax1.setRequestHeader("Pragma", "no-cache");
        if(exibe_carregando){ put("Carregando ...")    }
        ajax1.send(null)
        return true;
    }else{
        return false;
    }
    function ajaxOnReady(){
        if (ajax1.readyState==4){
            if(ajax1.status == 200){
                var texto=ajax1.responseText;
                if(texto.indexOf(" ")<0) texto=texto.replace(/\+/g," ");
                put(texto);
                extraiScript(texto);
            }else{
                if(exibe_carregando){put("Falha no carregamento. " + httpStatus(ajax1.status));}
            }
            ajax1 = null
        }else if(exibe_carregando){
                put("Carregando ..." )
        }
    }
    function put(valor){ 
        if((typeof(elemento_retorno)).toLowerCase()=="string"){ 
            if(valor!="Falha no carregamento"){ 
                eval(elemento_retorno + '= unescape("' + escape(valor) + '")')
            }
        }else if(elemento_retorno.tagName.toLowerCase()=="input"){
            valor = escape(valor).replace(/\%0D\%0A/g,"")
            elemento_retorno.value = unescape(valor);
        }else if(elemento_retorno.tagName.toLowerCase()=="select"){        
            select_innerHTML(elemento_retorno,valor)
        }else if(elemento_retorno.tagName){
            elemento_retorno.innerHTML = valor;
        }    
    }
    function pegaAjax(){ 
        if(typeof(XMLHttpRequest)!='undefined'){return new XMLHttpRequest();}
        var axO=['Microsoft.XMLHTTP','Msxml2.XMLHTTP','Msxml2.XMLHTTP.6.0','Msxml2.XMLHTTP.4.0','Msxml2.XMLHTTP.3.0'];
        for(var i=0;i<axO.length;i++){ try{ return new ActiveXObject(axO[i]);}catch(e){} }
        return null;
    }
    function httpStatus(stat){ 
        switch(stat){
            case 0:     return "Erro desconhecido de javascript";
            case 400:   return "400: Solicita&ccedil;&atilde;o incompreensível"; break;
            case 403: case 404: return "404: N&atilde;o foi encontrada a URL solicitada"; break;
            case 405: return "405: O servidor n&atilde;o suporta o m&eacute;todo solicitado"; break;
            case 500: return "500: Erro desconhecido de natureza do servidor"; break;
            case 503: return "503: Capacidade m&aacute;xima do servidor alcançada"; break;
            default: return "Erro " + stat + ". Mais informa&ccedil;&otilde;es em http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html"; break;
        }
    }
    function antiCacheRand(aurl){
        var dt = new Date();
        if(aurl.indexOf("?")>=0){
            return aurl + "&" + encodeURI(Math.random() + "_" + dt.getTime());
        }else{ return aurl + "?" + encodeURI(Math.random() + "_" + dt.getTime());}
    }
}
function select_innerHTML(objeto,innerHTML){
    objeto.innerHTML = ""
    var selTemp = document.createElement("micoxselect")
    var opt;
    selTemp.id="micoxselect1"
    document.body.appendChild(selTemp)
    selTemp = document.getElementById("micoxselect1")
    selTemp.style.display="none"
    if(innerHTML.toLowerCase().indexOf("<option")<0){//se não é option eu converto
        innerHTML = "<option>" + innerHTML + "</option>"
    }
    innerHTML = innerHTML.replace(/<option/g,"<span").replace(/<\/option/g,"</span")
    selTemp.innerHTML = innerHTML
    for(var i=0;i<selTemp.childNodes.length;i++){
        if(selTemp.childNodes[i].tagName){
            opt = document.createElement("OPTION")
            for(var j=0;j<selTemp.childNodes[i].attributes.length;j++){
                opt.setAttributeNode(selTemp.childNodes[i].attributes[j].cloneNode(true))
            }
            opt.value = selTemp.childNodes[i].getAttribute("value")
            opt.text = selTemp.childNodes[i].innerHTML
            if(document.all){ 
                objeto.add(opt)
            }else{
                objeto.appendChild(opt)
            }                    
        }    
    }
    document.body.removeChild(selTemp)
    selTemp = null
}    
	// --- Ajax
	// --- Exemplos de uso: 
	// --- Em um elemento qualquer: ajaxGet("http://www.suapagina.com/seuarquivo.htm",document.getElementById("div1"),true)
	// --- Em uma variÃ¡vel javascript: ajaxGet("http://localhost/lojavirtualfree/optionas.htm","document.getElementById('div2').innerHTML",false)
	// --- Em um input text: ajaxGet("http://localhost/lojavirtualfree/optionas.htm",document.getElementById("input1"),false)
	// --- Em um select (preenche com options): ajaxGet("http://localhost/lojavirtualfree/optionas.htm?viva",document.getElementById("select1"),true) 
	
function mascara(src, mask){ 
//DATA:
//onkeypress="mascara(this, '00/00/0000')"

//CEP:
//onkeypress="mascara(this, '00000-000')"
//TELEFONE:
//onkeypress="mascara(this, '(00) 0000-0000')"



var i = src.value.length; 

var saida = mask.substring(i,i+1); 

var ascii = event.keyCode; 

if (saida == "B") //Não aceita número como entrada no teclado

{ 

if ((ascii < 48) && (ascii > 57))

{

event.keyCode -= 32;

} 

else

{

event.keyCode = 0;

}

}else

if (saida == "A") //Aceita somente letras do alfabeto e maiúsculas como entrada no teclado

{ 

if ((ascii >=97) && (ascii <= 122))

{

event.keyCode -= 32;

} 

else

{

event.keyCode = 0;

} 

}else 

if (saida == "0") //Aceita somente números como entrada no teclado

{ 

if ((ascii >= 48) && (ascii <= 57))

{

return

} 

else

{

event.keyCode = 0

} 

}

else //Aceita qualquer entrada no teclado

if (saida == "#")

{

return;

} 

else

{

src.value += saida; 

i += 1 

saida = mask.substring(i,i+1); 

if (saida == "A")

{ 

if ((ascii >=97) && (ascii <= 122))

{

event.keyCode -= 32;

}else

{

event.keyCode = 0;

} 

}else

if (saida == "0")

{

if ((ascii >= 48) && (ascii <= 57))

{

return

}else

{

event.keyCode = 0

} 

}else

{

return;

} 

} 

} 

function limpa_cpf(cpf){
	var sretorno;
	sretorno = cpf;
	sretorno = troca(sretorno,".","");
	sretorno = troca(sretorno,"-","");
	sretorno = troca(sretorno,"/","");
	sretorno = troca(sretorno," ","");
	return sretorno;
}

function moduloCPF(str) {
   	soma=0;
   	ind=2;
   	for(pos=str.length-1;pos>-1;pos=pos-1) {
   		soma = soma + (parseInt(str.charAt(pos)) * ind);
   		ind++;
   		if(str.length>11) {
   			if(ind>9) ind=2;
   		}
	}
   	resto = soma - (Math.floor(soma / 11) * 11);
   	if(resto < 2) {
    	return 0
   	}
   	else {
   		return 11 - resto
   	}
}

function VerificaCPF(valor) {
	valor= limpa_cpf(valor);
	
	primeiro=valor.substr(1,1);
	falso=true;
	size=valor.length;
	if (size!=11){
		return false;
	}
	size--;
	for (i=2; i<size-1; ++i){
		proximo=(valor.substr(i,1));
		if (primeiro!=proximo) {
			falso=false
		}
	}
	if (falso){
		return false;
	}
   	if(moduloCPF(valor.substring(0,valor.length - 2)) + "" + moduloCPF(valor.substring(0,valor.length - 1)) != valor.substring(valor.length - 2,valor.length)) {
   		return false;
   	}
   	return true
}



	
	
