function validDate(Data){ 
	var err = 0;
	strData = Data;
	if(strData.length!=10){
	  return false;
	}
	var valid = "0123456789/";
	var ok = "yes";
	var temp;
	for(var i=0; i<strData.length; i++){
		temp = "" + strData.substring(i, i+1);
		if (valid.indexOf(temp) == "-1") err = 1;
	}
	if(strData.length != 10) err=1;
	dia = strData.substring(0, 2);
	c = strData.substring(2, 3);
	mes = strData.substring(3, 5); 
	e = strData.substring(5, 6);
	ano = strData.substring(6, 10);
	if(mes<1 || mes>12) err = 1;
	if(c != '/') err = 1;
	if(dia<1 || dia>31) err = 1;
	if(e != '/') err = 1;
	if(ano.length != 4) err = 1;
	if(mes==4 || mes==6 || mes==9 || mes==11){
		if (dia==31) err=1;
	}
	if(mes==2){
		var g=parseInt(ano/4);
		if(isNaN(g)){
			err=1;
		}
		if(dia>29) err=1;
		if(dia==29 && ((ano/4)!=parseInt(ano/4))) err=1;
	}
	if(err==1){
		return false;
	} else{
		return true;
	}
}
function createMask(_RefObjeto,_Modelo){
	if(!_RefObjeto.readOnly){
		var valorAtual = _RefObjeto.value;        
		var valorNumerico = '';
		var nIndexModelo = 0;
		var nIndexString = 0;
		var valorFinal = '';
		var adicionarValor = true;
		for(i=0;i<_Modelo.length;i++){
		  if(_Modelo.substr(i,1) != '_'){
			  valorAtual = valorAtual.replace(_Modelo.substr(i,1),'');
		  }
		}
		for(i=0;i<valorAtual.length;i++){
		  if(!isNaN(parseFloat(valorAtual.substr(i,1)))){
			  valorNumerico = valorNumerico + valorAtual.substr(i,1);
		  }
		}
		for(i=0;i<_Modelo.length;i++){
		  if(_Modelo.substr(i,1) == '_'){
			if(valorNumerico.substr(nIndexModelo,1) != ''){
			  valorFinal = valorFinal + valorNumerico.substr(nIndexModelo,1);
			  nIndexModelo++;nIndexString++;
			} else{
			  adicionarValor = false;
			}
		  } else{
			if(adicionarValor && valorNumerico.substr(nIndexModelo,1) != ''){
			   valorFinal = valorFinal + _Modelo.substr(nIndexString,1);
			   nIndexString++;
			}
		  }
		}
		_RefObjeto.value = valorFinal;
	}
}
function isValidCPF(pcpf){
	ncpf = "";
	for (c=0; c<=pcpf.length; c++){
		if (pcpf.charAt(c) != "."){
			if (pcpf.charAt(c) != "-"){
				ncpf = ncpf + pcpf.charAt(c);
			}
		}
	}
	pcpf = ncpf;
	if (pcpf.length != 11){
		sim=false;
	} else{
		sim=true;
	}
	if (sim){
		i = 1;
		while(pcpf.charAt(i) == pcpf.charAt(i -1) && i < 10){
			i++;
		}
		if(i == 10){
			sim=false;
		} else{
			sim=true;
		}
		if (sim){
			for (i=0; i<=(pcpf.length-1) && sim; i++){
				val = pcpf.charAt(i);
				if ( (val!="9")&&(val!="0")&&(val!="1")&&(val!="2")&&(val!="3")&&(val!="4")&&(val!="5")&&(val!="6")&&(val!="7")&&(val!="8")){
					sim=false;
				}
			}
			if (sim){
				soma = 0;
				for (i=0;i<=8;i++){
					val = eval(pcpf.charAt(i));
					soma = soma + (val*(i+1));
				}
				resto = soma % 11
				if (resto>9){
					dig = resto -10;
				} else{
					dig = resto;
				}
				if (dig != eval(pcpf.charAt(9))){ 
					sim=false;
				} else{
					soma = 0;
					for (i=0;i<=7;i++){
						val = eval(pcpf.charAt(i+1));
						soma = soma + (val*(i+1));
					}
					soma = soma + (dig * 9);
					resto = soma % 11;
					if (resto>9){	
						dig = resto -10;
					} else{
						dig = resto;
					}
					if (dig != eval(pcpf.charAt(10))){ 
						sim = false;
					} else {
						sim = true;
					}
				}
			}
		}
	}
	if (sim){
		return true;
	} else {
		return false;
	}
}
function isValidEMail(pemail){
  var result = false;
  var theStr = new String(pemail);
  var index = theStr.indexOf("@");
  if(index > 0){
	var pindex = theStr.indexOf(".",index);
	if((pindex > index+1) && (theStr.length > pindex+1)) result = true;
  }
  return result;
}
function onlyNumbers(){
	if(window.event.keyCode != 8 &&
	window.event.keyCode != 9 &&
	window.event.keyCode != 37 &&
	window.event.keyCode != 39 &&
	window.event.keyCode != 46 &&
	(window.event.keyCode <= 47 ||
	window.event.keyCode >= 58) &&
	(window.event.keyCode <= 95 ||
	window.event.keyCode >= 106)) window.event.returnValue = false;
}
function onlyDecimals(){
	if(window.event.shiftKey ||
	window.event.keyCode != 8 &&
	window.event.keyCode != 9 &&
	window.event.keyCode != 37 &&
	window.event.keyCode != 39 &&
	window.event.keyCode != 46 &&
	window.event.keyCode != 188 &&
	window.event.keyCode != 110 &&
	(window.event.keyCode <= 47 ||
	window.event.keyCode >= 58) &&
	(window.event.keyCode <= 95 ||
	window.event.keyCode >= 106)) window.event.returnValue = false;
}
function toNumber(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; 
	key = String.fromCharCode(whichCode);  
	if (strCheck.indexOf(key) == -1) return false; 
	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;
}
function strTrim(){
	return this.replace(/^\s+/,'').replace(/\s+$/,'');
}
String.prototype.trim = strTrim;
function criaMascara(objTxt){
	try{
		if(objTxt.value.length<=14)
			createMask(objTxt,'___.___.___-__')
		else
			if(objTxt.value.length<19)
				createMask(objTxt,'__.___.___/____-__')
			else
				createMask(objTxt,'___.___.___/____-__')
	} catch(e){
		alert(e);
	}
}
function MM_preloadImages() { //v3.0
  var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
    var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
    if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}

function MM_swapImgRestore() { //v3.0
  var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}

function MM_findObj(n, d) { //v4.01
  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 && d.getElementById) x=d.getElementById(n); return x;
}

function MM_swapImage() { //v3.0
  var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
   if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
}
