foc=Array();
foc['money2get']=0;
foc['money2give']=0;

sh=Array();
sh['from_cur']='from_popup';
sh['to_cur']='to_popup';

va=Array();
va['from_cur']='inmoney';
va['to_cur']='outmoney';

function show_input(a){
  if (navigator.userAgent.indexOf('Opera') >= 0) {
    a.className="inputhoveropera"
  }else{
    a.className="inputhover"
  };
}
function hide_input(a){
  if(foc[a.id] == 0){
    a.className="";
  }
}
function focus_input(a){
  foc[a.id]=1;
}
function blur_input(a){
  foc[a.id]=0;
  hide_input(a);
}
function show_popup(a, event, from){
  z=document.getElementById(a);
  if(z.style.visibility != "visible" && from.id != a){
    if(!isNaN(event.offsetX)){
      offsetX = (event.x)? event.x : event.offsetX;
      //z.style.pixelLeft=event.clientX - 250 + document.body.scrollLeft - offsetX + event.srcElement.clientWidth;
      z.style.pixelLeft=event.clientX - 265;
  } else {
      if (event.target) {
        z.style.left=event.clientX - 250 + document.body.scrollLeft + event.target.offsetLeft - event.layerX + event.target.clientWidth + 'px' ;
      } else {
        z.style.left = event.clientX - 250 + document.body.scrollLeft + 'px';
      }
    }
    if(!isNaN(event.offsetY)){
      z.style.pixelTop=event.clientY + 10 + document.body.scrollTop - event.offsetY;
  } else {
      if (event.target) {
        z.style.Top=event.clientY - 5 + document.body.scrollTop - event.layerY + event.target.clientHeight + 'px';
      } else {
        z.style.Top=event.clientY - 5 + document.body.scrollTop + 'px';
      }
  }
  }
  z.style.visibility="visible";
}

function hide_popup(a, event){
  z=document.getElementById(a);
  z.style.visibility="hidden";
}
function setval(a,b,c){
  z=document.getElementById(a);
  z.innerHTML = c;
  x=document.getElementById(va[a]);
  x.value=b;
  OutSumChanged(document.forms.makeexchange, document.forms.makeexchange.InSum.value)
  hide_popup(sh[a]);
}
function clear_num(num){
  var rg = new RegExp('[^1234567890\.,]','gi');
  var rg2 = new RegExp('[,]','gi');
  if(num.value.match(rg)){
    num.value = num.value.replace(rg,'');
  }
  num.value = num.value.replace(rg2,'.');
  if(num.id=='money2give'){
    OutSumChanged(document.forms.makeexchange, num.value);
  }
  if(num.id=='money2get'){
    InSumChanged(document.forms.makeexchange, num.value);
  }
}

 function COURSE (outmoney, inmoney) {
         var InMoney = inmoney.value;
         var OutMoney = outmoney.value;

         // проверка на операции с наличными или с одинаковыми валютами
         if ((InMoney == OutMoney)  ||
             ((InMoney == "USD") ||(InMoney == "EUR") ||(InMoney == "NUAH"))&&
             ((OutMoney == "USD")||(OutMoney == "EUR")||(OutMoney == "NUAH")))
             {P2=0; return 0;}

         // купить OutMoney за InMoney
         var ii = ((InMoney == "WMZ")||(InMoney == "MBU"))? "USD":
                  (InMoney == "WME")? "EUR":
                  ((InMoney == "WMR"))? "RUB":
                  ((InMoney == "NUAH")||(InMoney == "PCUAH")||(InMoney == "WMU"))? "UAH":
                  InMoney;
         var jj = ((OutMoney == "WMZ")||(OutMoney == "MBU"))? 0:
                  ((OutMoney == "WME")||(OutMoney == "EUR"))? 1:
                  ((OutMoney == "WMR"))? 2:
                  ((OutMoney == "NUAH")||(OutMoney == "PCUAH")||(OutMoney == "WMU"))? 3:
                   0;

         im  = InMoney.substring(0,2);
         om = OutMoney.substring(0,2);
         P2 = amP[OutMoney][InMoney];

         // Купить OutMoney за ii
         if (Course[ii][jj] != 0)
            return 1/Course[ii][jj]
         else
            return 0;
 }

 // перевод sum в $
 function SumToBucks (money, sum) {
         var jj = ((money == "WMZ")||(money=="MBU"))? 0:
                  ((money == "WME")||(money=="EUR"))? 1:
                  ((money == "WMR"))? 2:
                  ((money == "NUAH")||(money == "PCUAH")||(money == "WMU"))? 3:
                   0;
         return (Course["USD"][jj] != 0)? sum/Course["USD"][jj] : 0;
 }

 function InSumChanged (form, outsum) {
       outsum = not_space(norm_in(outsum));
         if(outsum!=0){
             var insum=OutSum2InSum(form, outsum);
         }
         form.InSum.value=out_number(insum);
 }

 function OutSumChanged (form,insum) {
       insum = not_space(norm_in(insum));
         if(insum!=0){
             var outsum=InSum2OutSum(form, insum);
         }
         form.OutSum.value=out_number(outsum);
 }

 function not_space(value){
         var nsvalue='';
         for (var i=0; i <= value.length; i++){
                 if (value.charAt(i) != " ") nsvalue += value.charAt(i) + '';
         }
         return nsvalue;
 }

 function out_number(val){
         if(isNaN(val)) return '';
         val=val+'';
         var div=val.indexOf('.');
         if(div==-1){
                 return val+'.00'
         }else if(val.length >div+3 ){
                 val=val.substr(0,div+3);
         }else for(var i=val.length;i<div+3;i++) val+='0';
         return val;
 }

 function norm_in(val){
         var div=val.indexOf(',');
         if(div!=-1) val=val.substr(0,div)+'.'+val.substr(div+1,val.length);
         if(! isNaN(val) && val <0 ) val=-val;
         return val;
 }

 function round2(val){
         return Math.round((val+0.0000001)*100)/100;
 }
