﻿function jsOpcoes(link, url){
  window.location = link + url;
}

function isEmail(str) {
  var supported = 0;
  if (window.RegExp) {
    var tempStr = "a";
    var tempReg = new RegExp(tempStr);
    if (tempReg.test(tempStr)) supported = 1;
  }
  if (!supported) 
    return (str.indexOf(".") > 2) && (str.indexOf("@") > 0);
  var r1 = new RegExp("(@.*@)|(\\.\\.)|(@\\.)|(^\\.)");
  var r2 = new RegExp("^.+\\@(\\[?)[a-zA-Z0-9\\-\\.]+\\.([a-zA-Z]{2,3}|[0-9]{1,3})(\\]?)$");
  return (!r1.test(str) && r2.test(str));
}

function formatCurrency(field) {
	if (! validatemoney(field)) {
		alert("Entrada inválida para o campo! Apenas números, vírgula ou ponto são permitidos!");
		field.focus();
		field.select();
	}
	else {
		num = field.value;
		num = num.toString().replace(/\./g,'');
		num = num.toString().replace(/\,/g,'.');
		if(num!='') {
			sign = (num == (num = Math.abs(num)));
			num = Math.floor(num*100+0.50000000001);
			cents = num%100;
			num = Math.floor(num/100).toString();
			if(cents<10)
				cents = "0" + cents;
			for (var i = 0; i < Math.floor((num.length-(1+i))/3); i++)
				num = num.substring(0,num.length-(4*i+3))+'.'+
			num.substring(num.length-(4*i+3));
			field.value = num + ',' + cents;
		}
	}
}

function validatemoney(field) {
	var valid = "0123456789,."
	var ok = "yes";
	var temp;
		
	for (var i=0; i<field.value.length; i++) {
		temp = "" + field.value.substring(i, i+1);
		if (valid.indexOf(temp) == "-1") 
			ok = "no";
	}
	if (ok == "no")
		return false;
	else
		return true;
}

function formatnum(field) {
	if (! validatenum(field)) {
		alert("Entrada inválida para o campo! Apenas números são permitidos!");
		field.focus();
		field.select();
	}
	else {
		num = field.value;
		num = num.toString().replace(/\./g,'');
		num = num.toString().replace(/\,/g,'.');
		if(num!='') {
			field.value = num;
		}
	}
}

function validatenum(field) {
	var valid = "0123456789"
	var ok = "yes";
	var temp;
		
	for (var i=0; i<field.value.length; i++) {
		temp = "" + field.value.substring(i, i+1);
		if (valid.indexOf(temp) == "-1") 
			ok = "no";
	}
	if (ok == "no")
		return false;
	else
		return true;
}

function validaCPF(text){
  if(text <1){
    return false;
  }else{
    var i;
    var s;
    s = text;
    s = limpa_string(s);
    if(isNaN(s)){
      return false;
    }
    var c = s.substr(0,9);
    var dv = s.substr(9,2);
    var d1 = 0;
    for (i = 0; i < 9; i++){
      d1 += c.charAt(i)*(10-i);
    }
    if(d1 == 0){
      return false;
    }
    d1 = 11 - (d1 % 11);
    if (d1>9){
      d1=0;
    }
    if (dv.charAt(0) != d1){
      return false;
    }
    d1 *= 2;
    for (i = 0; i < 9; i++){
      d1 += c.charAt(i)*(11-i);
    }
    d1 = 11 - (d1 % 11);
    if (d1 > 9){
      d1=0;
    }
    if (dv.charAt(1) != d1){
      return false;
    }
  }
  return true;
}

function validaCNPJ(jObjeto){

  var texto = jObjeto.value;
  texto = texto.toString().replace( "-", "" );
  texto = texto.toString().replace( ".", "" );
  
  if(text <1){
    return false;
  }else{
    var i;
    var s;
    s = text;
    s = limpa_string(s);
    var c = s.substr(0,12);
    var dv = s.substr(12,2);
    var d1 = 0;
    for (i = 0; i < 12; i++){
      d1 += c.charAt(11-i)*(2+(i % 8));
    }
    if (d1==0){
      return false;
    }
    d1 = 11 - (d1 % 11);
    if (d1 > 9){
      d1 = 0;
    }
    if (dv.charAt(0) != d1){
      return false;
    }
    d1 *= 2;
    for (i = 0; i < 12; i++){
      d1 += c.charAt(11-i)*(2+((i+1) % 8));
    }
    d1= 11 - (d1 % 11);
    if (d1 > 9){
      d1 = 0;
    }
    if (dv.charAt(1) != d1){
      return false;
    }
  }
  return true;
}

/*
function validaCNPJ(text){
  if(text <1){
    return false;
  }else{
    var i;
    var s;
    s = text;
    s = limpa_string(s);
    var c = s.substr(0,12);
    var dv = s.substr(12,2);
    var d1 = 0;
    for (i = 0; i < 12; i++){
      d1 += c.charAt(11-i)*(2+(i % 8));
    }
    if (d1==0){
      return false;
    }
    d1 = 11 - (d1 % 11);
    if (d1 > 9){
      d1 = 0;
    }
    if (dv.charAt(0) != d1){
      return false;
    }
    d1 *= 2;
    for (i = 0; i < 12; i++){
      d1 += c.charAt(11-i)*(2+((i+1) % 8));
    }
    d1= 11 - (d1 % 11);
    if (d1 > 9){
      d1 = 0;
    }
    if (dv.charAt(1) != d1){
      return false;
    }
  }
  return true;
}
*/

function jsMascara(jObjeto, sMask, evtKeyPress) {
  var i, nCount, sValue, fldLen, mskLen,bolMask, sCod, nTecla;

  nTecla = evtKeyPress.keyCode; 

  sValue = jObjeto.value;

  // Limpa todos os caracteres de formatação que
  // já estiverem no campo.
  
  sValue = sValue.toString().replace( "-", "" );
  sValue = sValue.toString().replace( "-", "" );
  sValue = sValue.toString().replace( ".", "" );
  sValue = sValue.toString().replace( ".", "" );
  sValue = sValue.toString().replace( "/", "" );
  sValue = sValue.toString().replace( "/", "" );
  sValue = sValue.toString().replace( "(", "" );
  sValue = sValue.toString().replace( "(", "" );
  sValue = sValue.toString().replace( ")", "" );
  sValue = sValue.toString().replace( ")", "" );
  sValue = sValue.toString().replace( " ", "" );
  sValue = sValue.toString().replace( " ", "" );
  
  fldLen = sValue.length;
  mskLen = sMask.length;

  i = 0;
  nCount = 0;
  sCod = "";
  mskLen = fldLen;

  while (i <= mskLen) {
    bolMask = ((sMask.charAt(i) == "-") || (sMask.charAt(i) == ".") || (sMask.charAt(i) == "/"))
    bolMask = bolMask || ((sMask.charAt(i) == "(") || (sMask.charAt(i) == ")") || (sMask.charAt(i) == " "))

    if (bolMask) {
      sCod += sMask.charAt(i);
      mskLen++; }
    else {
      sCod += sValue.charAt(nCount);
      nCount++;
    }

    i++;
  }

  jObjeto.value = sCod;

  if (nTecla != 8) { // backspace
    if (sMask.charAt(i-1) == "9") { // apenas números...
      return ((nTecla > 47) && (nTecla < 58)); } // números de 0 a 9
    else { // qualquer caracter...
      return true;
    } }
  else {
    return true;
  }
}

function taCount(visCnt) { 
	var taObj=event.srcElement;
	if (taObj.value.length>taObj.maxLength*1) taObj.value=taObj.value.substring(0,taObj.maxLength*1);
	if (visCnt) visCnt.innerText=taObj.maxLength-taObj.value.length;
}

function taLimit() {
	var taObj=event.srcElement;
	if (taObj.value.length==taObj.maxLength*1) return false;
}

function checkMail(mail){
	var er = new RegExp(/^[A-Za-z0-9_\-\.]+@[A-Za-z0-9_\-\.]{2,}\.[A-Za-z0-9]{2,}(\.[A-Za-z0-9])?/);
	if(typeof(mail) == "string"){
		if(er.test(mail)){ return true; }
	}else if(typeof(mail) == "object"){
		if(er.test(mail.value)){ 
					return true; 
				}
	}else{
		return false;
		}
}

function obrigadoRedirect()
{
	top.location="<%=sUrl%>";
}
