/*
  $Id: general.js,v 1.3 2003/02/10 22:30:55 hpdl Exp $

  osCommerce, Open Source E-Commerce Solutions
  http://www.oscommerce.com

  Copyright (c) 2003 osCommerce

  Released under the GNU General Public License
*/
function float2moeda(num) {
			   x = 0;
			   if(num<0) {
				  num = Math.abs(num);
				  x = 1;
			   }
			   if(isNaN(num)) num = "0";
      		   cents = Math.floor((num*100+0.5)%100);
   			   num = Math.floor((num*100+0.5)/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));
			   	ret = num + ',' + cents;
			  	if (x == 1) ret = ' - ' + ret;return ret;
			}

function redirect(url){
location.href=url;
	}
function rowOverEffect(object) {
  if (object.className == 'moduleRow') object.className = 'moduleRowOver';
}

function rowOutEffect(object) {
  if (object.className == 'moduleRowOver') object.className = 'moduleRow';
}

function ExpRecMMCat(QtdSubCat,IdCatExRec){
for(i=1;i<=QtdSubCat;i++){
	if (i!=IdCatExRec){
document.getElementById("TRSubCat_1_"+i).style.display='none';
document.getElementById("BntExpRecCat_1_"+i).src="Common/img/bnt_exp_cats.gif";
}

}
	if (document.getElementById("TRSubCat_1_"+IdCatExRec).style.display=='none'){
		document.getElementById("TRSubCat_1_"+IdCatExRec).style.display= '';
		document.getElementById("BntExpRecCat_1_"+IdCatExRec).src="Common/img/bnt_rec_cats.gif";
		}else{
		document.getElementById("TRSubCat_1_"+IdCatExRec).style.display= 'none';
		document.getElementById("BntExpRecCat_1_"+IdCatExRec).src="Common/img/bnt_exp_cats.gif";
			}
}

function EnviaForm(form){
	//alert('OK')
//document.getElementById('FrmPesquisa').submit()
//form.submit()
}
function SetFocus(TargetFormName) {
  var target = 0;
  if (TargetFormName != "") {
    for (i=0; i<document.forms.length; i++) {
      if (document.forms[i].name == TargetFormName) {
        target = i;
        break;
      }
    }
  }

  var TargetForm = document.forms[target];
    
  for (i=0; i<TargetForm.length; i++) {
    if ( (TargetForm.elements[i].type != "image") && (TargetForm.elements[i].type != "hidden") && (TargetForm.elements[i].type != "reset") && (TargetForm.elements[i].type != "submit") ) {
      TargetForm.elements[i].focus();

      if ( (TargetForm.elements[i].type == "text") || (TargetForm.elements[i].type == "password") ) {
        TargetForm.elements[i].select();
      }

      break;
    }
  }
}

function RemoveFormatString(TargetElement, FormatString) {
  if (TargetElement.value == FormatString) {
    TargetElement.value = "";
  }

  TargetElement.select();
}

function CheckDateRange(from, to) {
  if (Date.parse(from.value) <= Date.parse(to.value)) {
    return true;
  } else {
    return false;
  }
}

function IsValidDate(DateToCheck, FormatString) {
  var strDateToCheck;
  var strDateToCheckArray;
  var strFormatArray;
  var strFormatString;
  var strDay;
  var strMonth;
  var strYear;
  var intday;
  var intMonth;
  var intYear;
  var intDateSeparatorIdx = -1;
  var intFormatSeparatorIdx = -1;
  var strSeparatorArray = new Array("-"," ","/",".");
  var strMonthArray = new Array("jan","feb","mar","apr","may","jun","jul","aug","sep","oct","nov","dec");
  var intDaysArray = new Array(31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31);

  strDateToCheck = DateToCheck.toLowerCase();
  strFormatString = FormatString.toLowerCase();
  
  if (strDateToCheck.length != strFormatString.length) {
    return false;
  }

  for (i=0; i<strSeparatorArray.length; i++) {
    if (strFormatString.indexOf(strSeparatorArray[i]) != -1) {
      intFormatSeparatorIdx = i;
      break;
    }
  }

  for (i=0; i<strSeparatorArray.length; i++) {
    if (strDateToCheck.indexOf(strSeparatorArray[i]) != -1) {
      intDateSeparatorIdx = i;
      break;
    }
  }

  if (intDateSeparatorIdx != intFormatSeparatorIdx) {
    return false;
  }

  if (intDateSeparatorIdx != -1) {
    strFormatArray = strFormatString.split(strSeparatorArray[intFormatSeparatorIdx]);
    if (strFormatArray.length != 3) {
      return false;
    }

    strDateToCheckArray = strDateToCheck.split(strSeparatorArray[intDateSeparatorIdx]);
    if (strDateToCheckArray.length != 3) {
      return false;
    }

    for (i=0; i<strFormatArray.length; i++) {
      if (strFormatArray[i] == 'mm' || strFormatArray[i] == 'mmm') {
        strMonth = strDateToCheckArray[i];
      }

      if (strFormatArray[i] == 'dd') {
        strDay = strDateToCheckArray[i];
      }

      if (strFormatArray[i] == 'yyyy') {
        strYear = strDateToCheckArray[i];
      }
    }
  } else {
    if (FormatString.length > 7) {
      if (strFormatString.indexOf('mmm') == -1) {
        strMonth = strDateToCheck.substring(strFormatString.indexOf('mm'), 2);
      } else {
        strMonth = strDateToCheck.substring(strFormatString.indexOf('mmm'), 3);
      }

      strDay = strDateToCheck.substring(strFormatString.indexOf('dd'), 2);
      strYear = strDateToCheck.substring(strFormatString.indexOf('yyyy'), 2);
    } else {
      return false;
    }
  }

  if (strYear.length != 4) {
    return false;
  }

  intday = parseInt(strDay, 10);
  if (isNaN(intday)) {
    return false;
  }
  if (intday < 1) {
    return false;
  }

  intMonth = parseInt(strMonth, 10);
  if (isNaN(intMonth)) {
    for (i=0; i<strMonthArray.length; i++) {
      if (strMonth == strMonthArray[i]) {
        intMonth = i+1;
        break;
      }
    }
    if (isNaN(intMonth)) {
      return false;
    }
  }
  if (intMonth > 12 || intMonth < 1) {
    return false;
  }

  intYear = parseInt(strYear, 10);
  if (isNaN(intYear)) {
    return false;
  }
  if (IsLeapYear(intYear) == true) {
    intDaysArray[1] = 29;
  }

  if (intday > intDaysArray[intMonth - 1]) {
    return false;
  }
  
  return true;
}

function IsLeapYear(intYear) {
  if (intYear % 100 == 0) {
    if (intYear % 400 == 0) {
      return true;
    }
  } else {
    if ((intYear % 4) == 0) {
      return true;
    }
  }

  return false;
}
function cpfMask(v){
    v=v.replace(/\D/g,"")                    //Remove tudo o que não é dígito
    v=v.replace(/(\d{3})(\d)/,"$1.$2")       //Coloca um ponto entre o terceiro e o quarto dígitos
    v=v.replace(/(\d{3})(\d)/,"$1.$2")       //Coloca um ponto entre o terceiro e o quarto dígitos
                                             //de novo (para o segundo bloco de números)
    v=v.replace(/(\d{3})(\d{1,2})$/,"$1-$2") //Coloca um hífen entre o terceiro e o quarto dígitos
    return v
}

function cnpjMask(v){
    v=v.replace(/\D/g,"")                           //Remove tudo o que não é dígito
    v=v.replace(/^(\d{2})(\d)/,"$1.$2")             //Coloca ponto entre o segundo e o terceiro dígitos
    v=v.replace(/^(\d{2})\.(\d{3})(\d)/,"$1.$2.$3") //Coloca ponto entre o quinto e o sexto dígitos
    v=v.replace(/\.(\d{3})(\d)/,".$1/$2")           //Coloca uma barra entre o oitavo e o nono dígitos
    v=v.replace(/(\d{4})(\d)/,"$1-$2")              //Coloca um hífen depois do bloco de quatro dígitos
    return v
}

function cepMask(v){
    v=v.replace(/D/g,"")                //Remove tudo o que não é dígito
    v=v.replace(/^(\d{5})(\d)/,"$1-$2") //Esse é tão fácil que não merece explicações
    return v
}

function dataMask(v){
	
	v=v.replace(/\D/g,"")                 //Remove tudo o que não é dígito
	v=v.replace(/(\d{2})(\d)/,"$1/$2")       //Coloca uma barra entre o segundo e o terceiro dígitos
	v=v.replace(/(\d{2})(\d)/,"$1/$2")    //Coloca hífen entre o quarto e o quinto dígitos
	
	return v
}

function telMask(v){
    v=v.replace(/\D/g,"")                 //Remove tudo o que não é dígito
    v=v.replace(/^(\d\d)(\d)/g,"($1) $2") //Coloca parênteses em volta dos dois primeiros dígitos
    v=v.replace(/(\d{4})(\d)/,"$1-$2")    //Coloca hífen entre o quarto e o quinto dígitos
    return v
}

	function valida_cpf2(Objcpf)
	{	
	    var cpf = Objcpf.value;
	    
	    if(cpf.length < 14)    
	        return false;
	    
	    exp = /\.|\-/g
	    cpf = cpf.toString().replace( exp, "" );
	    var digitoDigitado = eval(cpf.charAt(9)+cpf.charAt(10));
	    var soma1=0, soma2=0;
	    var vlr =11;
	    
	    for(i=0;i<9;i++){
	        soma1+=eval(cpf.charAt(i)*(vlr-1));
	        soma2+=eval(cpf.charAt(i)*vlr);
	        vlr--;
	    }    
	    soma1 = (((soma1*10)%11)==10 ? 0:((soma1*10)%11));
	    soma2=(((soma2+(2*soma1))*10)%11);
	    
	    var digitoGerado=(soma1*10)+soma2;
	    if(digitoGerado!=digitoDigitado)    
	        return false;    
	    return true; 
    }
    
	//=========================================================================

function valida_cpf(Objcpf){
var i;
s = Objcpf.value.replace('.','').replace('.','').replace('-','');
//alert(s);
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){
		//alert("CPF Invalido")
		return false;
	}
d1 = 11 - (d1 % 11);
	if (d1 > 9) d1 = 0;
	if (dv.charAt(0) != d1){
	//alert("CPF Invalido")
	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){
	//alert("CPF Invalido")
	return false;
	}
return true;
} 

	//=========================================================================
	
	
	
	
    function valida_cnpj(ObjCnpj){
	    var cnpj = ObjCnpj.value;
	    var valida = new Array(6,5,4,3,2,9,8,7,6,5,4,3,2);
	    var dig1= new Number;
	    var dig2= new Number;
	    
	    exp = /\.|\-|\//g
	    cnpj = cnpj.toString().replace( exp, "" );
	    var digito = new Number(eval(cnpj.charAt(12)+cnpj.charAt(13)));
	        
	    for(i = 0; i<valida.length; i++){
	        dig1 += (i>0? (cnpj.charAt(i-1)*valida[i]):0);    
	        dig2 += cnpj.charAt(i)*valida[i];    
	    }
	    dig1 = (((dig1%11)<2)? 0:(11-(dig1%11)));
	    dig2 = (((dig2%11)<2)? 0:(11-(dig2%11)));
	    
	    if(((dig1*10)+dig2) != digito)    
	        return false;    
	    return true; 
	}
function MM_formtCep(e,src,mask) {
        if(window.event) { _TXT = e.keyCode; } 
        else if(e.which) { _TXT = e.which; }
        if(_TXT > 47 && _TXT < 58) { 
  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); } 
     return true; } else { if (_TXT != 8) { return false; } 
  else { return true; }
        }
}
function fncAjax(url,elemento){
	var mreq;
	// Procura o componente nativo do Mozilla/Safari para rodar o AJAX 
	if(window.XMLHttpRequest){
		// Inicializa o Componente XMLHTTP do Mozilla
		mreq = new XMLHttpRequest();
	// Caso ele não encontre, procura por uma versão ActiveX do IE 
	}else if(window.ActiveXObject){ 
		// Inicializa o Componente ActiveX para o AJAX
		mreq = new ActiveXObject("Microsoft.XMLHTTP");
	}else{ 
		// Caso não consiga inicializar nenhum dos componentes, exibe um erro
		alert("Seu navegador não tem suporte a AJAX.");
	}

	// Carrega a função de execução do AJAX
	mreq.onreadystatechange = function() {
		if(mreq.readyState == 1){
			// Quando estiver "Carregando a página", exibe a mensagem
			document.getElementById(elemento).innerHTML = '<img src="carregando_e.gif"/>';			
		}else if(mreq.readyState == 4){ 
			// Quando estiver completado o Carregamento
			// Procura pela DIV com o id="minha_div" e insere as informações 
			document.getElementById(elemento).innerHTML = mreq.responseText;
			document.getElementById("CEP").value = document.getElementById("hidCEP").value;
		}
	};
	// Envia via método GET as informações
	mreq.open("GET",url,true);
    mreq.setRequestHeader("Content-Type", "application/x-www-form-urlencoded;charset=iso-8859-1") 
	mreq.send(null);
}

function finalizaCompra(CodOrder){
	document.getElementById('checkout_confirmation').submit()
}
