/* layers.js * Author: Devin Teske <devinteske@hotmail.com> * Date: March 17th, 2002 *//* note: * most of this code *should* work with frames, but I can't make any guarantees * if you are going to use frames, please be cautious and test thoroughly */// this file requires constants.js, please include it *before* hand// for details on including it, please read the comments in constants.js/* ------------------------------------------------------------------- *//* define constants that can be used by all functions */// is_ie is defined in constants.js (which should be included *first*is_ie ? visp = ".style" : visp = "";is_ie ? prnt = "window." : prnt = "document.";/* ------------------------------------------------------------------- *//* Layer visibility functions *//* SwitchLayer: * makes a layer visible and the previous layer called, invisible * takes one parameter: a layer name. should be specified as the id * attribute of the layer */var preLayer = "";if (is_ie) var undefined = "";function SwitchLayer() {  var a = SwitchLayer.arguments;  a.length > 0 ? theLayer = a[0] : theLayer = "";  if ( preLayer != "" ) { eval(prnt+preLayer+visp+".visibility='hidden'"); }  if ( theLayer != "" ) { eval(prnt+theLayer+visp+".visibility='visible'"); }  preLayer = theLayer;}/* setLayerClose * close the layer after a period of time */var closeLayerTimer = 0;function setLayerClose() {  if (!closeLayerTimer) closeLayerTimer = setTimeout("SwitchLayer()", objectTimeout);}/* clearLayerClose * cancel the scheduled closing of the layer */function clearLayerClose() {  if (closeLayerTimer) { clearTimeout(closeLayerTimer); closeLayerTimer = 0 }}/* ------------------------------------------------------------------- *///fixes NS resize bug - do not REMOVE or it will break in netcape browsers NS4 = document.layers;if (NS4) {  origWidth = innerWidth;  origHeight = innerHeight;}function reDo() {  if (innerWidth != origWidth || innerHeight != origHeight)    location.reload();}if (NS4) onresize = reDo;/* ------------------------------------------------------------------- *//* code for scrolling data box */var speed = 50;var loop, timer;function ConstructObject(obj,nest){  nest=(!nest) ? '':'document.'+nest+'.';  this.el=bw.dom?document.getElementById(obj):bw.ie4?document.all[obj]:bw.ns4?eval(nest+'document.'+obj):0;  this.css=bw.dom?document.getElementById(obj).style:bw.ie4?document.all[obj].style:bw.ns4?eval(nest+'document.'+obj):0;  this.scrollHeight=bw.ns4?this.css.document.height:this.el.offsetHeight;  this.clipHeight=bw.ns4?this.css.clip.height:this.el.offsetHeight;  this.up=MoveAreaUp;this.down=MoveAreaDown;  this.MoveArea=MoveArea; this.x; this.y;  this.obj = obj + "Object";eval(this.obj + "=this");  return this;}function MoveArea(x,y){  this.x=x;this.y=y;  this.css.left=this.x;  this.css.top=this.y;}function MoveAreaDown(move){  if(this.y>-this.scrollHeight+objContainer.clipHeight) {    this.MoveArea(0,this.y-move);   if(loop) setTimeout(this.obj+".down("+move+")",speed);  }}function MoveAreaUp(move){  if(this.y<0){    this.MoveArea(0,this.y-move);    if(loop) setTimeout(this.obj+".up("+move+")",speed)  }}function PerformScroll(speed){  if(initialised){    loop=true;    if(speed>0) objScroller.down(speed);    else objScroller.up(speed);  }}function CeaseScroll(){  loop=false; clearTimeout(timer);}var initialised;function InitialiseScrollableArea(){  objContainer=new ConstructObject('divContainer');  objScroller=new ConstructObject('divContent','divContainer');  objScroller.MoveArea(0,0);  objContainer.css.visibility='visible';  initialised=true;}/* ------------------------------------------------------------------- */
