function checkNumber(val) {
	var strPass = val.value;
	var strLength = strPass.length;
	var lchar = val.value.charAt((strLength) - 1);
	var cCode = CalcKeyCode(lchar);

	if (cCode < 48 || cCode > 57 ) {
		var myNumber = val.value.substring(0, (strLength) - 1);
		val.value = myNumber;
	}
	return false;
}

function isEmpty(str){
	if(str == null || str.length ==0 || str=="-" || isWhitespace(str)==true)
	return true;
	
	else
	return false;
}


function isEmail(str){
	if(isEmpty(str)) return false;
	var re = /^[^\s()<>@,;:\/]+@\w[\w\.-]+\.[a-z]{2,}$/i
	return re.test(str);
}


function isDate(str){
	var re = /^(\d{1,2})[\s\.\/-](\d{1,2})[\s\.\/-](\d{4})$/
	if (!re.test(str)) return false;
	var result = str.match(re);
	var y = (result[3]);
	var m = (result[2]);
	var d = (result[1]);
	//alert("dia "+d+"mes "+m+"ano "+y);
	if(m < 0 || m > 12 || y < 1900 || y > 2100) return false;
	if(m == 2){
		var days = ((y % 4) == 0) ? 29 : 28;
	}else if(m == 04 || m == 06 || m == 09 || m == 11){
		var days = 30;
	}else{
		var days = 31;
	}
	return (d >= 1 && d <= days);
}


function validateForm(f, preCheck, newClass, alerttype,opcional, format, redimensionar){
	var errors = '';
	var errorsa = '';
	if(preCheck != null) {
		errors += errormsg[0];
		errorsa += errormsg[0]+'\n';
	}

	campos(f,format);

	if(!opcional) {
	
	var i,e,t,n,v;
	for(i=0; i < f.elements.length; i++){
		e = f.elements[i];

		if(e.optional) continue;
		t = e.type;
		n = e.id;
		nome = e.name;
		v = e.value;

		if(t == 'text' || t == 'password' || t == 'textarea'){

			//if(isEmpty(v) && n!="CPF" && n!="CNPJ"){
			if(isEmpty(v)){
				errors += n+errormsg[1]+ '<br>';
				errorsa += n+errormsg[1]+'\n';
				e.className=newClass;
				continue;
			}
			else {
				e.className='checkit';
			}
			/*if(v == e.defaultValue){
			errors += n+errormsg[2]+ '<br>';
			errorsa += n+errormsg[2]+'\n';
			e.className=newClass;
			continue;
			}
			else {
			e.className='checkit';
			}*/
			if(e.isAlpha){
				if(!isAlpha(v)){
					errors += n+errormsg[3]+ '<br>';
					errorsa += n+errormsg[3]+'\n';
					overlib('eaaaa');
					e.className=newClass;
					continue;
				}
				else {
					e.className='checkit';
				}
			}

			if(e.isCPF){
				if(!isCPF(v)){
					errors += n+errormsg[14]+ '<br>';
					errorsa += n+errormsg[14]+'\n';
					//overlib('eaaaa');
					e.className=newClass;
					continue;
				}
				else {
					e.className='checkit';
				}
			}

			if(e.isCNPJ){
				if(!isCNPJ(v)){
					errors += n+errormsg[14]+ '<br>';
					errorsa += n+errormsg[14]+'\n';
					//overlib('eaaaa');
					e.className=newClass;
					continue;
				}
				else {
					e.className='checkit';
				}
			}
			
			if(e.isRG){
				if(!isRG(v)){
					errors += n+errormsg[14]+ '<br>';
					errorsa += n+errormsg[14]+'\n';
					//overlib('eaaaa');
					e.className=newClass;
					continue;
				}
				else {
					e.className='checkit';
				}
			}

			if(e.isNumeric){
				if(!isNumeric(v)){
					errors += n+errormsg[4]+ '<br>';
					errorsa += n+errormsg[4]+'\n';
					e.className=newClass;
					continue;
				}
				else {
					e.className='checkit';
				}
			}
			if(e.isAlphaNumeric){
				if(!isAlphaNumeric(v)){
					errors += n+errormsg[5]+ '<br>';
					errorsa += n+errormsg[5]+'\n';
					e.className=newClass;
					continue;
				}
				else {
					e.className='checkit';
				}
			}
			if(e.isEmail){
				if(!isEmail(v)){
					errors += v+errormsg[6]+ '<br>';
					errorsa += n+errormsg[6]+'\n';
					e.className=newClass;
					continue;
				}
				else {
					e.className='checkit';
				}
			}
			if(e.isLength != null){
				var len = e.isLength;
				if(!isLength(v,len)){
					errors += n+errormsg[7]+ len + '<br>';
					errorsa += n+errormsg[7]+'\n';
					e.className=newClass;
					continue;
				}
				else {
					e.className='checkit';
				}
			}
			if(e.isLengthBetween != null){
				var min = e.isLengthBetween[0];
				var max = e.isLengthBetween[1];
				if(!isLengthBetween(v,min,max)){
					errors += n+errormsg[8] + min + ' e no máximo ' + max + ' caracteres<br>';
					errorsa += n+errormsg[8] + min + ' e no máximo ' + max + ' caracteres\n';
					e.className=newClass;
					continue;
				}
				else {
					e.className='checkit';
				}
			}
			if(e.isPhoneNumber){
				if(!isPhoneNumber(v)){
					errors += v+errormsg[9]+ '<br>';
					errorsa += n+errormsg[9]+'\n';
					e.className=newClass;
					continue;
				}
				else {
					e.className='checkit';
				}
			}
			if(e.isDate){
				if(!isDate(v)){
					errors += v+errormsg[10]+ '<br>';
					errorsa += n+errormsg[10]+'\n';
					e.className=newClass;
					continue;
				}
				else {
					e.className='checkit';
				}
			}
			if(e.isMatch != null){
				if(!isMatch(v, e.isMatch)){
					errors += n+errormsg[11]+ '<br>';
					errorsa += n+errormsg[11]+'\n';
					e.className=newClass;
					continue;
				}
				else {
					e.className='checkit';
				}
			}
		}
		if(t.indexOf('select-one') != -1){
			if(isEmpty(e.options[e.selectedIndex].value) || e.options[e.selectedIndex].value=="-"){
				errors += n+errormsg[12]+ '<br>';
				errorsa += n+errormsg[12]+'\n';
				e.className=newClass;
				continue;
			}
			else {
				e.className='checkit';
			}
		}
		if(t == 'file'){
			if(isEmpty(v)){
				errors += n+errormsg[13]+'<br>';
				errorsa += n+errormsg[13]+'\n';
				e.className=newClass;
				continue;
			}
			else {
				e.className='checkit';
			}
		}
	}
	div = document.getElementById('errordiv');
	if(errors != '') {
		if(alerttype == '2' || alerttype == '3') {
			alert(errorsa);
		}
		if(alerttype == '1' || alerttype == '3') {
			return dispErr(errors, div, redimensionar);
		}
	}
	div.style.display="none";
	
	if(errors=='') {
		//desabilita os botoes do formulario
	for (i = 0; i < f.length; i++) {
			var tempobj = f.elements[i];
			if (tempobj.type.toLowerCase() == "submit" || tempobj.type.toLowerCase() == "reset" || tempobj.type.toLowerCase() == "button")
			tempobj.disabled = true;
		}
	}
	
	}
	
	return errors == '';
}

dispErr = function(error, divo, redimensionar) {
	divo.style.display="block";
	divo.innerHTML = error;
	//redimensionar iframe
	if(redimensionar==true)
	frame();
	return false;
}


function formatar(src, mask) {
	var i = src.value.length;
	var saida = mask.substring(0,1);

	var texto = mask.substring(i)

	if (texto.substring(0,1) != saida) {
		src.value += texto.substring(0,1);
	}
}

function limparCampos(f){
	if(confirm("Deseja limpar o formulário?")) {
		for(i=0; i < f.elements.length; i++){
			e = f.elements[i];

			if(e.type!="submit" && e.type!="button" && e.type!="hidden" && e.name!="usuario_up") {
				if(e.type=="select-one") {
					for(j=0;j<e.length;j++) {
						if(e[j].defaultSelected==true)
						e[j].selected=true;
					}
			}

			else if(e.type=="radio" && e.defaultChecked)
				e.checked = true;				

			else if(e.type=="checkbox")
				e.checked = false;

			else
				e.value="";

			e.className='limpo';
			}
		}
	}
	div = document.getElementById('errordiv');
	div.style.display="none";
}



function MascaraMoeda(objTextBox, SeparadorMilesimo, SeparadorDecimal, 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 || whichCode == 8 || whichCode == 0) return true;
	key = String.fromCharCode(whichCode); // Valor para o código da Chave
	if (strCheck.indexOf(key) == -1) return false; // Chave inválida
	len = objTextBox.value.length;
	for(i = 0; i < len; i++)
	if ((objTextBox.value.charAt(i) != '0') && (objTextBox.value.charAt(i) != SeparadorDecimal)) break;
	aux = '';
	for(; i < len; i++)
	if (strCheck.indexOf(objTextBox.value.charAt(i))!=-1) aux += objTextBox.value.charAt(i);
	aux += key;
	len = aux.length;
	if (len == 0) objTextBox.value = '';
	if (len == 1) objTextBox.value = '0'+ SeparadorDecimal + '0' + aux;
	if (len == 2) objTextBox.value = '0'+ SeparadorDecimal + aux;
	if (len > 2) {
		aux2 = '';
		for (j = 0, i = len - 3; i >= 0; i--) {
			if (j == 3) {
				aux2 += SeparadorMilesimo;
				j = 0;
			}
			aux2 += aux.charAt(i);
			j++;
		}
		objTextBox.value = '';
		len2 = aux2.length;
		for (i = len2 - 1; i >= 0; i--)
		objTextBox.value += aux2.charAt(i);
		objTextBox.value += SeparadorDecimal + aux.substr(len - 2, len);
	}
	return false;
}

function confirmBox() {
	  var total=0;
	  for (var i=0;i<document.form1.elements.length;i++) {
	    var x = document.form1.elements[i];
	   // if (x.name == 'UIDL') {		
		    	if(x.checked == true) {
				total+=1;
				}//if x.checked
	}//for
	
	if(total>0) {

	if (confirm("Deseja realmente excluir os registros selecionados?")) {
				form1.submit();
	}//if confirm
	}//if total
	

}//função


ok=false;
function checkAll() {
	if(!ok){
	  for (var i=0;i<document.form1.elements.length;i++) {
	    var x = document.form1.elements[i];
	   // if (x.name == 'UIDL') {		
		    	x.checked = true;
				document.form1.botao.value="Desmarcar todos";
				ok=true;
		//	}
	    }
	}
	else{
	for (var i=0;i<document.form1.elements.length;i++) {
	    var x = document.form1.elements[i];
	 //   if (x.name == 'UIDL') {		
		    	x.checked = false;
				document.form1.botao.value="Selecionar todos";
				ok=false;
		//	}
	    }	
	}
}

