function openWindow(left, topo, alt, lar, url, nome)
{
	par = "top=" + topo + ",left=" + left +",width=" + lar + ",height=" + alt + ",resizable=0,status=0,menubar=0,scrollbars=0"
	jan = window.open(url, nome, par);
	jan.focus();
}

function openWindowScroll(left, topo, alt, lar, url, nome)
{
	lar = lar + 17
	par = "top=" + topo + ",left=" + left +",width=" + lar + ",height=" + alt + ",resizable=0,status=0,menubar=0,scrollbars=1"
	jan = window.open(url, nome, par);
	jan.focus();
}

function downloadFile()
{
	window.location.href="/sistemas/inc/saveFile.asp?filename=" +arguments[0] +'&pathfile=' +excReplace(arguments[1],'/','$');
}

function excReplace(s, vlr, nVlr)
{
	for (var i=0; i<s.length; i++)
	{
		s = s.replace(vlr, nVlr)
	}
	return s;
}

function trim( texto )
{
	var continua = true;
	var inicial = 0;
	var final = 0;
	var i = 0;
	var j = texto.length - 1;
	while ( continua )
	{
		if (  texto.charAt(i) == " " ) i++
		if (  texto.charAt(j) == " " ) j--;
		if ( texto.charAt(i) != " " && texto.charAt(j) != " " )	
		{
			continua = false;
			inicial = i;
			final = j;
		}
	} 
	return (texto.substring(inicial, final+1));
}

function cleanString(s)
{
	var aValues = "0123456789";
	var aReturn = "";
	var nChar   = "";

	for (var i=0; i<s.length; i++)
	{
		nChar = s.charAt(i);
		if (aValues.indexOf(nChar)>=0)
	        aReturn=aReturn+nChar
	}
	return aReturn
}

function isCnpj(aCnpj)
{
	var i;
	aCnpj = cleanString(aCnpj);
	var c = aCnpj.substr(0,12);
	var dv = aCnpj.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 isCpf(aCpf)
{
	var val,soma,dig,resto;
	aCpf = 	cleanString(aCpf);
	
	if (aCpf.length != 11) 
		return false;
	soma = 0;
	for (i=0;i<=8;i++)
	{
		val = eval(aCpf.charAt(i));
		soma = soma + (val*(i+1));
	}
	resto = soma % 11;
	if (resto>9) 
		dig = resto-10;
	else  
		dig = resto;
	if (dig != eval(aCpf.charAt(9))) 
		return false;
	else
	{
		soma = 0;
		for (i=0;i<=7;i++)
		{
			val = eval(aCpf.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(aCpf.charAt(10))) 
			return false;
	}
	return true;
}

function isDate(aDate)
{
	var aDate = cleanString(aDate);
	var aBisix    = 0;

	if (aDate.length != 8)
	    return false;

	var aYear = aDate.substr(4,4);
	if (aYear == 0)
		return false;

	var aMonth = aDate.substr(2,2);
	if ((aMonth < 1) || (aMonth > 12))
		return false;

	var aDay = aDate.substr(0,2);
	if (aDay < 1)
		return false;

	if ((aYear % 4 == 0) || (aYear % 100 == 0) || (aYear % 400 == 0))
		aBisix = 1;

	if ((aMonth == 2) && (aBisix == 1) && (aDay > 29))
		return false;

	if ((aMonth == 2) && (aBisix != 1) && (aDay > 28))
		return false;

	if ((aDay > 31) && ((aMonth == "01") || (aMonth == "03") || (aMonth == "05") || (aMonth == "07") || (aMonth == "08") || (aMonth == "10") || (aMonth == "12")))
		return false;

	if ((aDay > 30) && ((aMonth == "04") || (aMonth == "06") || (aMonth == "09") || (aMonth == "11")))
		return false;

	return true;
}

function isTime(aTime)
{
	var aTime   = cleanString(aTime);
	if (aTime.length == 0)
	    return false;

	var aHour   = aTime.substr(0,2);
	var aMinute = aTime.substr(2,2);

	if ((aHour < 0) || (aHour > 24))
		return false;

	if ((aMinute < 0) || (aMinute > 59))
		return false;

	return true;
}

function isCep(aCep)
{
	var aCep   = cleanString(aCep);

	if (aCep.length != 8)
		return false;

	return true;
}

function isMoney(v)
{
	return /^[0-9,.]+$/.test(v);
}

function isNumber(v)
{
	return /^[0-9]+$/.test(v);
}

function isEmailOld(aEmail)
{
	if ( (aEmail.indexOf('@') <= 0) || (aEmail.indexOf("@") == (aEmail.length)-1) )
		return false;

	return true;
}

function isEmail(aValue)
{
	var letrasvalidas = "0123456789ABCDEFGHIJKLMNOPQRSTUVXYZWabcdefghijklmnopqrstuvxzwy@.-_";
	var total_arroba = 0;
	var total_ponto_dominio = 0;
	var total_ponto_usuario = 0;
	var tamanho_campo = aValue.length;	
	var aux_fld = trim(aValue);
	var caracter_ant = '';
	var i = 0;
	var resul = '';
	for (i = 0; i < tamanho_campo ;  i++) 
	{
		if (letrasvalidas.indexOf( aux_fld.charAt(i) ) == -1)
		if ( total_arroba == 0 ) total_ponto_usuario = -1; 
		else total_ponto_dominio = -1;
		if (  aux_fld.charAt(i) == '@' ) total_arroba++;
		if (  total_ponto_usuario != -1 && total_arroba == 0 && aux_fld.charAt(i) == '.'  )
		if ( caracter_ant != '' && caracter_ant != '.') total_ponto_usuario++;
		else total_ponto_usuario = -1;
		if (total_ponto_dominio != -1 && total_arroba > 0 && aux_fld.charAt(i) == '.'  )
		if ( i < (tamanho_campo - 1) && caracter_ant != '@' && caracter_ant != '.') total_ponto_dominio++;
		else total_ponto_dominio = -1;
		caracter_ant = aux_fld.charAt(i);
	}
	if ( total_arroba != 1 && tamanho_campo != 0) resul = "Erro no @ do e-mail!";
	else
	if ( total_ponto_usuario == -1 && tamanho_campo != 0) resul = "Usuário do e-mail inválido!";
	else 
	if ( total_ponto_dominio == -1 || total_ponto_dominio < 1 && tamanho_campo != 0) resul = "Dominio do  e-mail inválido!";
	if ( resul == '')
		return true;
	else
		return false;
}

function formatEmail(aObj)
{
	if (!isEmail(aObj.value))
	{
		alert('E-mail inválido');
	}
}

function formatDate(aObj)
{
	var aDate = cleanString(aObj.value);
	var aYear, aLocalDate;
	var aLocalDate = new Date();
	var aLocalYear = aLocalDate.getYear();
	var aLocalMes  = String(aLocalDate.getMonth() + 1)
	
	if (aDate.length == 1)
		aDate = "0" +aDate

      var aSize = aDate.length;
	
	if (aLocalMes.length == 1)
		aLocalMes = "0" +aLocalMes
	
	if ( aSize == 2)
		aDate = aDate.substr( 0, 2 ) +aLocalMes +aLocalYear

	if ( aSize == 4)
		aDate = aDate.substr( 0, 4 ) +aLocalYear

	if ( aSize == 6)
	{
		aYear = Number(aDate.substr(4,2))
		if (aYear > 50)
			aDate = aDate.substr( 0, 4 ) +"19" +aDate.substr( 4, 2 )
		else
			aDate = aDate.substr( 0, 4 ) +"20" +aDate.substr( 4, 2 )
	}

	if (!isDate(aDate))
		return;

	aObj.value = aDate.substr( 0, 2 ) + "/" + aDate.substr( 2, 2 ) + "/" + aDate.substr( 4, 4 );
	return true;
}

function formatTime( aObj )
{
	vr = aObj.value;
    tam = vr.length;

	if (!isTime(aObj.value))
		return;

	if ( tam == 5)
	{
		if (vr.charAt(2) == ".")
			aObj.value = vr.substr(0,2) + ":" + vr.substr(3,2);
		else if (vr.charAt(2) == ",")
			aObj.value = vr.substr(0,2) + ":" + vr.substr(3,2);
	}
    if ( tam == 4)
	{
		if (vr.charAt(1) == ":")
			aObj.value = "0" + aObj.value;
		else if (vr.charAt(1) == ".")
			aObj.value = "0" + vr.substr(0,1) + ":" + vr.substr(2,2);
		else if (vr.charAt(1) == ",")
			aObj.value = "0" + vr.substr(0,1) + ":" + vr.substr(2,2);
		else
			aObj.value = vr.substr(0,2) + ":" + vr.substr(2,2);
	}
	if ( tam == 3)
		aObj.value = "0" + vr.substr( 0, 1 ) + ":" + vr.substr( 1, 2 );

	if ( tam == 2)
        aObj.value = aObj.value + ":00";

    if ( tam == 1)
		aObj.value = "0" + aObj.value + ":00";

	return true;
}

function formatCep(aObj)
{
	var aCep  = cleanString(aObj.value);
	var aSize = aCep.length;

	if (!isCep(aObj.value))
		return;

	if (aSize == 8)
		aObj.value = aCep.substr(0, 5) + "-" + aCep.substr(5, 3);

    return true;
}

function formatCnpj(aObj)
{
	var aCnpj = cleanString(aObj.value);
	if (!isCnpj(aObj.value))
		return;
	if ( aCnpj.length == 14)
		aObj.value = aCnpj.substr(0, 2) + "." + aCnpj.substr(2, 3) +"." + aCnpj.substr(5, 3) +"/" + aCnpj.substr(8, 4) +"-"  + aCnpj.substr(12, 2);
    return true;
}

function formatCpf(aObj)
{
	var aCpf = cleanString(aObj.value);
	if (!isCpf(aCpf))
		return;
	if (aCpf.length == 11)
		aObj.value = aCpf.substr(0, 3) + "." + aCpf.substr(3, 3) +"." + aCpf.substr(6, 3) +"-" + aCpf.substr(9, 11);
    return true;
}

function formatMoney(aObj){
    var vr = aObj.value;
    vr = vr.replace(".","");
    if(vr.length == 0){return "0,00";}
    if (vr.indexOf(",") == -1){vr += ",00"}
    if (vr.indexOf(",") == (vr.length-2)){vr += "0"}
    var vraux="",p,pDec=vr.indexOf(","),t="";
    var vrDec=vr.slice(pDec+1);
    if (vrDec.length > 3){vrDec = vrDec.substr(0,3)}
    for(var i=pDec;i>0;i--)
    {
        p=i-pDec;
	  if(i!=pDec&&(p%3==0))vraux+=".";
	  vraux+=vr.charAt(i-1);
    }
    for(i=0;i<vraux.length;i++)t=vraux.charAt(i)+t;
    
    vr = t+","+vrDec;
    if (isMoney(vr) == true)
        aObj.value = vr
}

function formatTelefone(aObj)
{
	var aValue = cleanString(aObj.value);
	var nSize = aValue.length;

	if (nSize == 9)
		aObj.value = aValue.substr(0, 2) + " " + aValue.substr(2, 3) +"-" + aValue.substr(5, 4);
	if (nSize == 10)
		aObj.value = aValue.substr(0, 2) + " " + aValue.substr(2, 4) +"-" + aValue.substr(6, 4);

    return true;
}

function isTelefone(aValue)
{
	aValue = cleanString(aValue);
	if (aValue.length != 9 && aValue.length != 10)
		return false;

	return true;
}

function isSuframa(asValue)
{
	var aS = cleanString(asValue);
	if (aS.length < 9)
		return false;
	else
		return true;
}
function isIe(asValue)
{
	var aNum = "1234567890";
	var aIe = cleanString(asValue);
	var num = 0;
	var carac = 0;
	if (aIe == "" || aIe == "0")
	{
		return false;
	}
	else
	{
		for (var i=0; i<aIe.length; i++)
		{
			nChar = aIe.charAt(i);
			if (aNum.indexOf(nChar)>=0)
			      num++;
			if (aNum.indexOf(nChar)< 0)
				carac++;
		}
		if(num > carac)
			return true;
		else
			return false;
	}
}
function isCreditCard(st) 
{
	st = cleanString(st)
	if (st.length > 19)
		return (false);
	sum = 0; mul = 1; l = st.length;
	for (i = 0; i < l; i++) 
	{
		digit = st.substring(l-i-1,l-i);
		tproduct = parseInt(digit ,10)*mul;
		if (tproduct >= 10)
			sum += (tproduct % 10) + 1;
		else
			sum += tproduct;
		if (mul == 1)
			mul++;
		else
			mul--;
	}
	
	if ((sum % 10) == 0)
		return (true);
	else
		return (false);
}

function isNumSerie(pNumeroSerie)
{
   var nSerie,nTamanho;
   var dAno,dData,aAno,sAno;
   var j=0

   aMes = new Array("01","02","03","04","05","06","07","08","09","10","11","12");
   
   aAno  = new Array();
   dData = new Date();
   dAno = dData.getFullYear();
   
   for(i=-10;i<10;i++)
   {   
      sAno = dAno + i;
      sAno = sAno.toString();
      aAno[j] = sAno.substring(2,4);
      j++;
   }
   
   nTamanho = pNumeroSerie.length - 9;
   nAno     = pNumeroSerie.substring(nTamanho,nTamanho + 2);
   nMes     = pNumeroSerie.substring(nTamanho + 2,nTamanho + 4);
   
   for(i=0;i<aAno.length;i++)
   {
     if(nAno == aAno[i])
        nAno = '';
   }
   for(i=0;i<aMes.length;i++)
   {
     if(nMes == aMes[i])
        nMes = '';
   }
   
   if(nAno ==  '' && nMes == '')
     return true;
   else
     return false;

}

function isNumSerieTH(pNumeroSerie)
{
	var aFabri,aInicioCodigo,aAno,aEstado,aCodigoProduto;
	var sInvalido = "";
	var sBema   = pNumeroSerie.substring(0,2);
	var nInicio = pNumeroSerie.substring(2,4);
	var sEstado = pNumeroSerie.substring(6,8);
	var nCodigo = pNumeroSerie.substring(8,12);
	
	nMes = pNumeroSerie.substring(12,14); 
	nAno = pNumeroSerie.substring(4,6);
	
	aMes = new Array("01","02","03","04","05","06","07","08","09","10","11","12");
	aFabri        = new Array("BE");
	aInicioCodigo = new Array("20","60");
	aAno          = new Array("03","04","05","06","07","08","09","10");
	aEstado       = new Array("AM","AC","SC","PR","SP","RJ","MG","RR","RG");
	aCodigo       = new Array("9550","9650");
	
	if(pNumeroSerie.length != 19 && pNumeroSerie.length != 20)
		return false;
       	
	for(i=0;i<aFabri.length;i++)
	{
		if(sBema == aFabri[i])
		{
			sBema = '';
			break;
		}
	}
	
	for(i=0;i<aInicioCodigo.length;i++)
	{
	   if(nInicio == aInicioCodigo[i])
	   {
		  nInicio = '';
		  break;
	   }
	}
	
    for(i=0;i<aAno.length;i++)
    {
      if(nAno == aAno[i])
      {
        nAno = '';
		break;
	  }
    }
    
   for(i=0;i<aEstado.length;i++)
   {
     if(sEstado == aEstado[i])
     {
       sEstado = '';
	   break;
     }
   }
   
   for(i=0;i<aCodigo.length;i++)
   {
     if(nCodigo == aCodigo[i])
     {
        nCodigo = '';
	    break;
     }
   }

   for(i =0;i<aMes.length;i++)
   {
     if(nMes == aMes[i])
     {
        nMes = '';
	    break;
     }
   }
   
   if(sBema == '' && nInicio == '' && nAno == '' && sEstado == '' && nCodigo == '' && nMes == '')
     return true;
   else
     return false;

}
function toFloat(flag, vrl)
{
	if(flag==1)
	{
		vrl = vrl.replace('.','')
		vrl = vrl.replace(',','.')
		return parseFloat(vrl);
	}
	else if(flag==2)
	{
		vrl = vrl.toString();
		vrl = vrl.replace('.',',')
		return vrl;
	}
}

