var cdolar= 1.32;  // conversion euros a dolares

var siglo=2000;

var timerID= null;
var timerRunning= false;

var bpjfstd= 195.33; // Price JfControls Standard
var bpjfdev= 315.53; // Price JfControls Developer
var bpjfpro= 540.91; // Price JfControls Professional
var bpjfstddev= 120.20; // Price Update from JfControls Standard to Developer
var bpjfstdpro= 345.58; // Price Update from JfControls Standard to Professional
var bpjfdevpro= 225.38; // Price Update from JfControls Developer to Professional
var bpjfupstd= 126.21; // Price Update JfControls Standard
var bpjfupdev= 204.34; // Price Update JfControls Developer
var bpjfuppro= 354.60; // Price Update JfControls Professional

var pjfstd;  
var pjfdev;  
var pjfpro;  
var pjfstddev;  
var pjfstdpro;
var pjfdevpro;
var pjfupstd;
var pjfupdev;
var pjfuppro;

var strcargo;

var strCargoTarjeta;
var strNingunProducto;
var strCampoRequerido;
var strMailNoCoincide;
var strMailInvalid;

function sellanguage()
{
  if (document.orderform.lang.value == "en") {
    strCargoTarjeta = "The charge in your credit card will be made in Euros :";
    strNingunProducto = "You don't choose any product";
    strCampoRequerido = "It lacks to complete any required field";
    strMailNoCoincide = "Check email out again";
    strMailInvalid = "Invalid EMail";
  } else {
    strCargoTarjeta = "El cargo en la Tarjeta de crédito será realizado en Euros:";
    strNingunProducto = "No ha escogido ningún producto";
    strCampoRequerido = "Falta completar algún campo requerido";
    strMailNoCoincide = "Ambos email deben coincidir";
    strMailInvalid = "No es un email válido";
  }
}  

function selmoneda()
{
  sellanguage();

  if (document.orderform.monedat[1].checked){
    pjfstd=redondear(bpjfstd*cdolar);
    pjfdev=redondear(bpjfdev*cdolar);
    pjfpro=redondear(bpjfpro*cdolar);
    pjfstddev=redondear(bpjfstddev*cdolar);
    pjfstdpro=redondear(bpjfstdpro*cdolar);
    pjfdevpro=redondear(bpjfdevpro*cdolar);
    pjfupstd=redondear(bpjfupstd*cdolar);
    pjfupdev=redondear(bpjfupdev*cdolar);
    pjfuppro=redondear(bpjfuppro*cdolar);
  } else {
    pjfstd=bpjfstd;
    pjfdev=bpjfdev;
    pjfpro=bpjfpro;
    pjfstddev=bpjfstddev;
    pjfstdpro=bpjfstdpro;
    pjfdevpro=bpjfdevpro;
    pjfupstd=bpjfupstd;
    pjfupdev=bpjfupdev;
    pjfuppro=bpjfuppro;
  }

  strcargo = "";

  document.orderform.etiqcargo.value = strCargoTarjeta;

  document.orderform.preciojfstd.value = mascara(pjfstd);
  document.orderform.preciojfdev.value = mascara(pjfdev);
  document.orderform.preciojfpro.value = mascara(pjfpro);          
  document.orderform.preciojfstddev.value = mascara(pjfstddev);
  document.orderform.preciojfstdpro.value = mascara(pjfstdpro);
  document.orderform.preciojfdevpro.value = mascara(pjfdevpro);
  document.orderform.preciojfupstd.value = mascara(pjfupstd);
  document.orderform.preciojfupdev.value = mascara(pjfupdev);
  document.orderform.preciojfuppro.value = mascara(pjfuppro);

  document.orderform.moneda.value = "EUR";
  if (document.orderform.monedat[0].checked){
    document.orderform.etiqtotal.value = "Total euros :";
    strcargo = "EUR";
  } else {
    document.orderform.etiqtotal.value = "Total USD :";
    strcargo = "USD";
  }

  procesarcalculos();
}

function calculo(total,cantidad,precio)
{
  if (isNaN(cantidad.value)) cantidad.value="";
  if (cantidad.value=="") {
    total.value="";
  } else {
    if (cantidad.value<0 || cantidad.value>999) cantidad.value=0;
    cantidad.value=redondear(eval(cantidad.value));        
    total.value=cantidad.value*precio;
    document.orderform.totalprod.value = eval(document.orderform.totalprod.value)+eval(total.value);
    total.value=mascara(eval(total.value));
  }
}
 
function procesarcalculos()
{
  var civa=0;
  var dec=0;
  var numero=0;
  var numero1;

  document.orderform.totalprod.value=0;
  document.orderform.moneda.value="EUR";

  calculo(document.orderform.totaljfstd,document.orderform.cantidadjfstd,pjfstd);
  calculo(document.orderform.totaljfdev,document.orderform.cantidadjfdev,pjfdev);
  calculo(document.orderform.totaljfpro,document.orderform.cantidadjfpro,pjfpro);
  calculo(document.orderform.totaljfstddev,document.orderform.cantidadjfstddev,pjfstddev);
  calculo(document.orderform.totaljfstdpro,document.orderform.cantidadjfstdpro,pjfstdpro);
  calculo(document.orderform.totaljfdevpro,document.orderform.cantidadjfdevpro,pjfdevpro);
  calculo(document.orderform.totaljfupstd,document.orderform.cantidadjfupstd,pjfupstd);
  calculo(document.orderform.totaljfupdev,document.orderform.cantidadjfupdev,pjfupdev);
  calculo(document.orderform.totaljfuppro,document.orderform.cantidadjfuppro,pjfuppro);

  if (!(document.orderform.lang.value == "en")) {
    if (document.orderform.checkspain.checked) {
        civa=document.orderform.totalprod.value*18/100;
        civa=redondear(civa);
    }
    document.orderform.totaliva.value=mascara(civa);
    document.orderform.totalprod.value=eval(document.orderform.totalprod.value)+civa;
  }


  if (!(document.orderform.lang.value == "es")) {
    if (document.orderform.checkvat.checked) {
        civa=document.orderform.totalprod.value*18/100;
        civa=redondear(civa);
    }
    document.orderform.totalvat.value=mascara(civa);
    document.orderform.totalprod.value=eval(document.orderform.totalprod.value)+civa;
  }

  numero=document.orderform.totalprod.value;

  if (document.orderform.distri.value == "Y") {
    numero1=document.orderform.percentage;
    if (isNaN(numero1.value)) numero1.value="";
    if (numero1.value=="") numero1.value=0;
    numero=numero-((numero*numero1.value)/100);
    document.orderform.totalprod.value = numero;
  }

  if (document.orderform.monedat[1].checked){ numero=numero/cdolar; }

  dec=Math.floor((numero-Math.floor(numero))*100+0.5);
  numero=Math.floor(numero).toString();
  if (dec<10) dec="0"+dec;
  numero=numero+'.'+dec;
 
  document.orderform.coste.value = numero;
//*// document.orderform.coste.value = "1.00";

  if (document.orderform.monedat[1].checked){
    document.orderform.totalcargo.value=mascara(redondear(document.orderform.totalprod.value/cdolar));
  } else {
    document.orderform.totalcargo.value=mascara(document.orderform.totalprod.value);
  }

  document.orderform.totalprod.value=mascara(eval(document.orderform.totalprod.value));
}
 
function ponepuntos(numero)
{
  for (var i=0;i<Math.floor((numero.length-(1+i))/3);i++)
    numero=numero.substring(0,numero.length-(4*i+3))+','+numero.substring(numero.length-(4*i+3));
  return (numero);
}
	   	  
function mascara(numero)
{
  var dec=0;

  if (isNaN(numero)) {
    numero="0";
  } else { 
    dec=Math.floor((numero-Math.floor(numero))*100+0.5);
    numero=Math.floor(numero).toString();
    numero=ponepuntos(numero);
    if (dec<10) dec="0"+dec; 
    numero=numero+'.'+dec;
  }
  return (numero);
}	  

function redondear(numero)
{
  numero=(Math.floor(numero*100+0.5))/100;
  return(numero);
}

function getFullYear(d)
{  
  var yr = d.getYear();
  if (yr < 1000) yr += siglo;
  return yr;
}

function DoFechaLocal()
{
  var hoy = new Date();
  var dia = hoy.getDate();
  var mes = hoy.getMonth()+1;
  var anno = getFullYear(hoy);
  var hora = hoy.getHours();
  var min = hoy.getMinutes();
  var sec = hoy.getSeconds();

  dia = ((dia<10)?"0":"")+dia;
  mes = ((mes<10)?"0":"")+mes;
  hora = ((hora<10)?"0":"")+hora;
  min = ((min<10)?"0":"")+min;
  sec = ((sec<10)?"0":"")+sec;

  document.orderform.fechalocal.value = anno+"-"+mes+"-"+dia+" "+hora+":"+min+":"+sec;
}
 	
function gobanesto()
{
  DoFechaLocal();

  if (document.orderform.distri.value == "Y") {
    if (eval(document.orderform.coste.value)==0 || document.orderform.coste.value=="") {
      window.alert(strNingunProducto);
      return false;
    }else{
      if (document.orderform.Name.value=="" || document.orderform.Address.value=="" || 
          document.orderform.City.value=="" || document.orderform.State.value=="" || 
          document.orderform.Country.value=="" || document.orderform.Email.value=="" ||
          document.orderform.DealerName.value=="" || document.orderform.DealerID.value=="" || document.orderform.EmailCustomer.value=="" || document.orderform.EmailCustomer1.value=="") {
        window.alert(strCampoRequerido);
        return false;
      } else { 
        if (document.orderform.EmailCustomer.value != document.orderform.EmailCustomer1.value) {
          window.alert(strMailNoCoincide);
          return false;
        }else{
          if (document.orderform.EmailCustomer.value.indexOf('@') < 0) {
            window.alert(strMailInvalid);
            return false;
          } else {
            if (document.orderform.Email.value.indexOf('@') < 0) {
              window.alert(strMailInvalid);
              return false;
            } else { 
              return true;
            }
          } 
        }
      }
    }
  } else {
    if (eval(document.orderform.coste.value)==0 || document.orderform.coste.value=="") {
      window.alert(strNingunProducto);
      return false;
    }else{
      if (document.orderform.Name.value=="" || document.orderform.Address.value=="" || 
          document.orderform.City.value=="" || document.orderform.State.value=="" || 
          document.orderform.Country.value=="" || document.orderform.Email.value=="" || document.orderform.Email1.value=="") {
        window.alert(strCampoRequerido);
        return false;
      } else { 
        if (document.orderform.Email.value != document.orderform.Email1.value) {
          window.alert(strMailNoCoincide);
          return false;
        }else{
          if (document.orderform.Email.value.indexOf('@') < 0) {
            window.alert(strMailInvalid);
            return false;
          } else {
            return true;
          } 
        }
      }
    }
  }
} 
   	  	
function wprint() 
{
  window.print();
}   	  	
