function formatar(src, mask, type) {
	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);
	}
}

// Verifica se somente números foram digitados no campo;
function isValidNumberValue (objTextControl) {
	var strValidNumber = "1234567890";

   for (nCount = 0; nCount < objTextControl.length; nCount++) {
      strTempChar=objTextControl.substring(nCount,nCount+1);
      if ( strValidNumber.indexOf(strTempChar,0)==-1) {
         return false; 
      }
   } 
   return true;
}

// Verifica se a Data digitada é válida
function isValidData(vfield)
{
   var diaStr, mesStr, anoStr
   var diaInt, mesInt, anoInt
   var tam, sep1, sep2, verAno

   tam = vfield.value.length;
   
   if (tam > 0) {
	   
	   sep1 = parseInt(vfield.value.indexOf("/", 0));
	   if (sep1 < 0){
		  alert("A Data digitada deve ter o seguinte formato: DD/MM/AAAA !");
		  return false;
	   }
	   sep2 = parseInt(vfield.value.indexOf("/", sep1 + 1))
	   if (sep2 < 5) {
		  alert("A Data digitada deve ter o seguinte formato: DD/MM/AAAA !");
		  return false;
	   }
	   verAno = tam-sep2;
	   if(verAno < 5 ) {
		  alert("As datas devem ser preenchidas utilizando 4 dígitos para informar o Ano (ex.: DD/MM/AAAA)!");
		  return false;
	   }
	   diaStr = vfield.value.substring(0, sep1);
	   if(diaStr.substring(0, 1) == "0") {
		  diaStr = diaStr.substring(1, 2);
	   }
	   if (isValidNumberValue(diaStr)) {
		  mesStr = vfield.value.substring(sep1+1, sep2); 
		  if(mesStr.substring(0, 1) == "0") {
			 mesStr = mesStr.substring(1, 2);
		  }
		  if (isValidNumberValue(mesStr)) {
			 anoStr = vfield.value.substring(sep2+1, tam);
			 if (isValidNumberValue(anoStr)) {
				diaInt = parseInt(diaStr);
				mesInt = parseInt(mesStr);
				anoInt = parseInt(anoStr);
				if ((diaInt <= 0) || (diaInt > 31)) {
				   alert("O dia informado não é válido!");
				   return false;
				}
				if ((mesInt <= 0) || (mesInt > 12)) {
				   alert("O mês informado não é válido!");
				   return false;
				}
				if ((mesInt == 4) || (mesInt == 6) || (mesInt == 9) || (mesInt == 11)) {
				   if( diaInt > 30) {
					  alert("O mês informado não possui mais de 30 dias!");
					  return false;
				   }
				}
				if (mesInt == 2) {
				   if ((anoInt % 4 == 0) && ( (anoInt % 100 != 0) || (anoInt % 400 == 0))) {
					  if (diaInt > 29) {
						 alert("O mês informado não possui mais de 29 dias!");
						 return false;
					  }
				   }
				   else {
					  if(diaInt > 28) {
						 alert("O mês informado não possui mais de 28 dias!");
						 return false;
					  }
				   }
				   return true;
				} 
				return true;
			 }
			 else { 
				alert("O campo deve conter somente números!");
				return false; 
			 }
		  }
		  else { 
			 alert("O campo deve conter somente números!");
			 return false; 
		  }
	   }
	   else {
		  alert("O campo deve conter somente números!");
		  return false; 
	   }
   }
   else {
	  return true; 
   }
}

function href_form(form, tip_tela, nom_tela) {		 	
	var val = validateForm(form, 'noAlert');
	
	if (tip_tela != "") {
		form.target = "pod1";
		if (tip_tela == "impressao_0002p") {
			form.action = nom_tela + ".jsp?print=2";	
		}
		else {
			form.action = nom_tela + ".jsp?print=S";	
		}
		if (val != false) {
			var janela = openWindow("","pod1","location=no,menubar=yes,toolbar=yes,titlebar=no,status=yes,top=0,left=0,scrollbars=yes,resizable=yes", 720, 500);
		}
	} else {
		form.target = "";
		form.action = "";				
	}
}

// ----- Remove dados null para update fields.
function checkNull(param) {
	if (param == 'null') param = '';
	else if (param == '0') param = '';
	else param = param;
	return param;
}

// ----- Remove os caracteres inválidos ao submeter o formulário.
function remove_chars(form) {	  	
    for(var i=0; i < form.elements.length; i++) {
		form.elements[i].value = replaceAll(form.elements[i].value, "\'", "");
		form.elements[i].value = replaceAll(form.elements[i].value, "\"", "");
	}
}

//if(!(/^\w+([\.-_-]?\w+)*@\w+([\.-_-]?\w+)*(\.\w{2,4})+$/.test(document.atendimento.email.value))) {
function replaceAll(oldStr,findStr,repStr) {
	var srchNdx = 0;
	var newStr = "";
	while (oldStr.indexOf(findStr,srchNdx) != -1) {
   		newStr += oldStr.substring(srchNdx,oldStr.indexOf(findStr,srchNdx));
    	newStr += repStr;
   		srchNdx = (oldStr.indexOf(findStr,srchNdx) + findStr.length);
  	}
	newStr += oldStr.substring(srchNdx,oldStr.length);
  	return newStr;
}

// ------ Habilita e desabilita com readonly.
function makeReadOnly() {
	var x=document.getElementById("myInput")
	x.readOnly=true
}
function delReadOnly() {
	var x=document.getElementById("myInput")
	x.readOnly=false
}
// ----- Fim.

// ----- Troca o link do formulário e chama impressão.
function target_form(form, tip_tela, nom_tela) {		 	
	var val = validateForm(form, 'noAlert');
	
	if (tip_tela != "") {
		form.target = "pod1";
		form.action = nom_tela + "p.jsp";	
		if (val != false) {
			var janela = openWindow("","pod1","location=no,menubar=yes,toolbar=yes,titlebar=no,status=yes,top=0,left=0,scrollbars=yes,resizable=no", 700, 500);
		}
	} else {
		form.target = "";
		form.action = "";				
	}
}
function openWindow(URL, windowName, windowFeatures, w, h) {
  var t = (screen.height - h) / 2;
  var l = (screen.width  - w) / 2;
  window.open(URL, windowName, windowFeatures+',width='+w+',height='+h+',top='+t+',left='+l);
  return false;
}

function inputMaskFloat(evnt, field) {
  var key = document.all ? evnt.keyCode : document.layers ? evnt.which : 0;
  var val = field.value;
  if (key == 9 || key == 13)
    return true;
  else
  if ((key > 47 && key < 58) || (key > 95 && key < 106) || (key == 8)) {
    if (key == 8) {
      val = val.substring(0, val.length-3) + val.substring(val.length-2, val.length-1);
      if (val.length < 3)
        val = '0' + val;
	} else {
	  val = val.substring(0, val.length-3) + val.substring(val.length-2, val.length);
	  if (val.length < field.maxLength-1)
	    val += String.fromCharCode(key > 95 ? key-48 : key);
	  if (val.charAt(0) == '0')
		val = val.substring(1, val.length);
    }
    val = val.substring(0, val.length-2) + ',' + val.substring(val.length-2, val.length);
	field.value = val;
  }
  return false;
}

function updateCounter(field, value) {
  field.value = value.length;
}

function Tecla(e) {
   if (document.all) var tecla = event.keyCode; // ----- Internet Explorer
   else if(document.layers) var tecla = e.which; // ----- Internet Explorer
   
   if (tecla > 47 && tecla < 58) // ----- Numeros de 0 a 9
      return true;
   else {
      if (tecla != 8) // ----- backspace
         event.keyCode = 0; // ----- return false
      else return true;
   }
}
 function RetiraAcentos(Campo) {
   var Acentos = "áàãââÁÀÃÂéêÉÊíÍóõôÓÔÕúüÚÜçÇabcdefghijklmnopqrstuvxwyz~<>:;?/°}]º^~`´{[+=§()*&¨¬%¢$#³@²!.";
   var Traducao ="AAAAAAAAAEEEEIIOOOOOOUUUUCCABCDEFGHIJKLMNOPQRSTUVXWYZ";
   var Posic, Carac;
   var TempLog = "";
   for (var i=0; i < Campo.length; i++)
   {
   Carac = Campo.charAt (i);
   Posic  = Acentos.indexOf (Carac);
   if (Posic > -1)
	  TempLog += Traducao.charAt (Posic);
   else
      TempLog += Campo.charAt (i);
   }
      return (TempLog);
}

function textCounter(campo, countcampo, maxlimit){ 
	if (campo.value.length > maxlimit) { 
		campo.value = campo.value.substring(0, maxlimit); 
	} else { 
		countcampo.value = maxlimit - campo.value.length; 
	} 
} 	
//moveTo(-4,-4);
//resizeTo(screen.width+8,screen.height-20);

