// Copyright Simugates 2000-2001
var BrowserAgent=window.navigator.userAgent;
var bAppName=window.navigator.appName;
var BrowserType='XX';
var BrowserVersion=0.0;
var posMSIE=BrowserAgent.indexOf("MSIE");
if (posMSIE>0){//Internet explorer
   var bMozIdx=BrowserAgent.indexOf("Mozilla/");
   var szver=BrowserAgent.substr(bMozIdx+8,4);
   BrowserVersion=parseInt(szver);
   if (BrowserVersion>=4){
      BrowserType='IE';
      szver=BrowserAgent.substr(posMSIE+5,4);
      BrowserVersion=parseFloat(szver);
	  }
   }
if (bAppName.indexOf("Netscape")>=0){//Netscape
   BrowserType='NS';
   var bMozIdx=BrowserAgent.indexOf("Mozilla/");
   var szver=BrowserAgent.substr(bMozIdx+8,4);
   BrowserVersion=parseInt(szver);
   if (BrowserVersion>=5){
      var bNSIdx=BrowserAgent.indexOf("Netscape");
      szver=BrowserAgent.substr(bNSIdx+10,4);
      BrowserVersion=parseFloat(szver);
      } 
   else if (BrowserVersion>=4) BrowserVersion=parseFloat(szver);
   }
var FileName="";
function geturlfilename()
{
  filename="";
  var szurl=document.URL;
  var start=szurl.search(/[a-zA-Z]+[a-zA-Z0-9]\./);
  if (start>=0){
     var stop=szurl.search(/\?/);
     if (stop<0) stop=szurl.length;
     if (stop>start) filename=szurl.substr(start,stop-start);
     }
  return filename;
}
var cxScreen=top.screen.width;
var cyScreen=top.screen.height;
FileName=geturlfilename();
function NSget_calc(doc,vId)
{
  if (BrowserVersion<5){
     var elem=doc.layers[vId];
     if ((!elem)&&(BrowserVersion>=4)){//pas trouvé, chercher par récurrence pour les versions >=4
        var nblayers=doc.layers.length;
        var i=0;
        while ((!elem)&&(i<nblayers)){
              elem=NSget_calc(doc.layers[i].document,vId);
              i++;
              }
        }
     }
  else {
       elem=doc.getElementById(vId);
	   }
  return elem; 
}
function IEget_calc(vId)
{
  return document.all.tags("div")[vId];
}
function get_calc(vId)
{
  if (BrowserType=='IE') return IEget_calc(vId);
  else return NSget_calc(document,vId);
}
function get_image(vId)
{
  var img=new Image();
  if (BrowserType=='IE') img=document.images[vId];
  else {
	   var m_calc=get_calc(vId);
	   if (m_calc) img=m_calc.document.images[0];
	   } 
  return img;
}

function GetStyle(vId)
{
  if (BrowserType=='IE') return calc=IEget_calc(vId).style;
  else return NSget_calc(document,vId);
}
function set_calc_visibility(calc,v)
{
  if (BrowserType=='IE'){
     if (calc.style.visibility!=v) calc.style.visibility=v;
     }	
  else {
       if (BrowserVersion<5){
          if (calc.visibility!=v) calc.visibility=v;
		  }
       else {
	        calc.style.visibility=v;
	        }
       }
}
function set_visibility(vId,v)
{
  var calc=get_calc(vId);
  set_calc_visibility(calc,v);
}
function NSget_elem(doc,nom)
{
  var elem=doc[nom];
  if ((!elem)&&(BrowserVersion>=4)){//pas trouvé, chercher par récurrence pour les versions >=4
     var nblayers=doc.layers.length;
     var i=0;
     while ((!elem)&&(i<nblayers)){
           elem=NSget_elem(doc.layers[i].document,nom);
           i++;
           }
    }
  return elem; 
} 
function get_elem(nom)
{
  var vElem;
  if (BrowserType=='IE') vElem=document[nom]; 
  else vElem=NSget_elem(document,nom);
  return vElem;
}
function set_left(doc,vId,Left)
{
  if (BrowserType=='IE')IEget_calc(vId).style.posLeft=Left; 
  else NSget_calc(doc,vId).left=Left;
}
function get_left(doc,vId)
{
  if (BrowserType=='IE')return IEget_calc(vId).style.posLeft; 
  else return NSget_calc(doc,vId).left;
}
function get_calc_left(calc)
{
  if (BrowserType=='IE')return calc.style.posLeft; 
  else return calc.left;
}
function set_calc_left(calc,Left)
{
  if (BrowserType=='IE')calc.style.posLeft=Left; 
  else calc.left=Left;
}
function get_calc_top(calc)
{
  if (BrowserType=='IE')return calc.style.posTop; 
  else return calc.top;
}
function set_calc_top(calc,Top)
{
  if (BrowserType=='IE')calc.style.posTop=Top; 
  else calc.top=Top;
}
//class Jcalc
function Jcalc(name)
{
  function Jcalcvisibility(v)
  {
    set_calc_visibility(this.calc,v);
  }
  function Jcalcsetleft(Left)
  {
    set_calc_left(this.calc,Left);
  }
  function Jcalcgetleft()
  {
    return get_calc_left(this.calc);
  }
  function Jcalcsettop(Top)
  {
    set_calc_top(this.calc,Top);
  }
  function Jcalcgettop()
  {
    get_calc_top(this.calc);
  }
  function Jcalcsetpos(pos)
  {
    set_calc_left(this.calc,pos[0]);
    set_calc_top(this.calc,pos[1]);
  }
  this.calc=get_calc(name);
  this.visibility=Jcalcvisibility;
  this.setleft=Jcalcsetleft;
  this.getleft=Jcalcgetleft;
  this.settop=Jcalcsettop;
  this.gettop=Jcalcgettop;
  this.setpos=Jcalcsetpos;
}
function Jbutton(nameoff,nameon)
{
  this.calcoff=new Jcalc(nameoff);
  this.calcon=new Jcalc(nameon);
  function Jbuttonmsover()
  {
    this.calcoff.visibility('hidden');
    this.calcon.visibility('visible');
  }
  function Jbuttonmsout()
  {
    this.calcon.visibility('hidden');
    this.calcoff.visibility('visible');
  }
  this.msover=Jbuttonmsover
  this.msout=Jbuttonmsout;
}
function Jbutton2(nameoff1,nameoff2,nameon1,nameon2)
{
  this.calcoff1=new Jcalc(nameoff1);
  this.calcoff2=new Jcalc(nameoff2);
  this.calcon1=new Jcalc(nameon1);
  this.calcon2=new Jcalc(nameon2);
  function Jbutton2msover()
  {
    this.calcoff1.visibility('hidden');
    this.calcoff2.visibility('hidden');
    this.calcon1.visibility('visible');
    this.calcon2.visibility('visible');
  }
  function Jbutton2msout()
  {
    this.calcon1.visibility('hidden');
    this.calcon2.visibility('hidden');
    this.calcoff1.visibility('visible');
    this.calcoff2.visibility('visible');
  }
  this.msover=Jbutton2msover
  this.msout=Jbutton2msout;
}
function Jbutton3(nameout,nameover,namedown)
{
  this.calcout=new Jcalc(nameout);
  this.calcover=new Jcalc(nameover);
  this.calcdown=new Jcalc(namedown);
  function Jbutton3msout()
  {
    this.calcover.visibility('hidden');
    this.calcdown.visibility('hidden');
    this.calcout.visibility('visible');
  }
  function Jbutton3msover()
  {
    this.calcout.visibility('hidden');
    this.calcdown.visibility('hidden');
    this.calcover.visibility('visible');
  }
  function Jbutton3msdown()
  {
    this.calcout.visibility('hidden');
    this.calcover.visibility('hidden');
    this.calcdown.visibility('visible');
  }
  this.msout=Jbutton3msout;
  this.msover=Jbutton3msover;
  this.msdown=Jbutton3msdown;
}
function Jswapcalcs(name1,name2)
{
  this.m_visibility='hidden';
  function Jswapcalcsswap()
  {
    this.timret++;
    if (this.timret==1){
       if (this.m_visibility=='visible'){
          if (this.state==0){
             this.state=1;
             this.calc1.visibility('hidden');
             this.calc2.visibility('visible');
             }
          else{
	        this.state=0;
              this.calc2.visibility('hidden');
              this.calc1.visibility('visible');
	        }
          }
       else {
            this.calc1.visibility('hidden');
            this.calc2.visibility('hidden');
            } 
       }			
    this.timret--;
  }
  this.calc1=new Jcalc(name1);
  this.calc2=new Jcalc(name2);
  this.timret=0;
  this.state=0;
  this.swap=Jswapcalcsswap;
  function SetVisibility(v)
  {
    this.m_visibility=v;
  } 
  this.visibility=SetVisibility;
}
function JCalcs(dim)
{
  this.m_dim=dim
  this.m_fill=0;
  this.m_calcs=new Array(dim);
  this.visible='hidden';
  function JCalcsVisibility(v)
  {
    var n;
    for (n=0;n<this.m_fill;n++) this.m_calcs[n].visibility(v);
    this.visible=v;
  }
  function JCalcsAdd(name)
  {
    if (this.m_fill<this.m_dim){
       this.m_calcs[this.m_fill]=new Jcalc(name);
       this.m_fill++;
       }
  }
  this.add=JCalcsAdd;
  this.visibility=JCalcsVisibility;
}
