

function resizeFlash()
  {
    var winW = 630, winH = 460;

    if (parseInt(navigator.appVersion)>3) {
     if (navigator.appName=="Netscape") {
      winW = window.innerWidth-16;
      winH = window.innerHeight-16;
     }
     if (navigator.appName.indexOf("Microsoft")!=-1) {
      winW = document.body.offsetWidth-20;
      winH = document.body.offsetHeight-20;
     }
    }


    if (winW>757)
    {
      var x=document.getElementById('flashTable').rows;
      var winW2 = winW-200
      x[0].height=winW2*.46;
    }else{
      var x=document.getElementById('flashTable').rows;
      //x[0].width=527;
      x[0].height=255;
    }
  }


// Create a browser object whihc gives us details
// about the browser in use
function Browser() 
{
    var agent  = navigator.userAgent.toLowerCase();
    this.major = parseInt(navigator.appVersion);
    this.minor = parseFloat(navigator.appVersion);
    this.ns    = ((agent.indexOf('mozilla')!=-1) && ((agent.indexOf('spoofer')==-1) && (agent.indexOf('compatible') == -1)));
    this.ns2   = (this.ns && (this.major == 2));
    this.ns3   = (this.ns && (this.major == 3));
    this.ns4b  = (this.ns && (this.minor < 4.04));
    this.ns4   = (this.ns && (this.major >= 4));
    this.ie    = (agent.indexOf("msie") != -1);
    this.ie3   = (this.ie && (this.major == 2));
    this.ie4   = (this.ie && (this.major >= 4));
    this.dhtml = (this.major >= 4);
    this.op3   = (agent.indexOf("opera") != -1);
    this.win   = (agent.indexOf("win")!=-1);
    this.mac   = (agent.indexOf("mac")!=-1);
    this.unix  = (agent.indexOf("x11")!=-1);
    this.DOM   = ((document.getElementById)&&(!document.all)) ? true:false;
}

var browser   = new Browser();   // The browser

if( browser.DOM )
{
   doc = "document";
   sty = ".style";
   htm = ""
   visHide = "hidden";
   visShow = "visible";
   document.onmousemove = mouseMoved;
}
else if( browser.ns4 ) 
{
   doc = "document";
   sty = "";
   htm = ".document";
   visHide = "hide";
   visShow = "show";

   document.captureEvents( Event.MOUSEMOVE );
   document.onmousemove = mouseMoved;
} 
else if( browser.ie4 ) 
{
   doc = "document.all";
   sty = ".style";
   htm = ""
   visHide = "hidden";
   visShow = "visible";

   document.onmousemove = mouseMoved;
}

var mouseX = 0;
var mouseY = 0;
function mouseMoved( e )
{
   if( browser.ie4 ) 
   {
      mouseX = (event.clientX + document.body.scrollLeft);
      mouseY = (event.clientY + document.body.scrollTop );
   }
   else if( browser.ns4 || browser.DOM ) 
   {
      mouseX = e.pageX;
      mouseY = e.pageY;
   }
}

var screen_width  = screen.width;
var screen_height = screen.height;

var avail_width  = 0;
var avail_height = 0;

function getWindowSize()
{
   if( browser.ns4 ) 
   {
      avail_width  = innerWidth;
      avail_height = innerHeight;
      preLoad();
   } 
   else if( browser.ie4 ) 
   {
      avail_width  = document.body.clientWidth;
      avail_height = document.body.clientHeight;
      preLoad();
   }
}

function img_toggle( imgName, mode ) 
{
   if( document.images ) 
      document[ imgName ].src = eval( imgName + "_" + mode + ".src" );
}

var imageCount  = 0;
var totalImages = 5;       // Set to the number of images to preLoad

function preLoad() 
{
}

// Clean this up...
function loadCheck() 
{
    imageCount++;
    if( imageCount == totalImages )
    {
        hideLayer( "loadLyr" );
    } 
    else 
    {
        var status = eval( doc + '["loadLyr"]' + htm );
        var msg = '<TABLE BORDER=0 CELLSPACING=0 CELLPADDING=5 WIDTH=300><TR><TD WIDTH=' + Math.round((imageCount/totalImages)*100) + '% BGCOLOR=#FF0000 ALIGN=RIGHT>' + '<FONT class="status">' + Math.round((imageCount/totalImages)*100) + '%</FONT>' +'</TD><TD BGCOLOR=#800000 VALIGN=MIDDLE>&nbsp;</TD></TR><TR><TD COLSPAN=2 ALIGN=CENTER><FONT class="main">Percent Images Loaded</FONT></TD></TR></TABLE>';
        if( browser.ns4 ) 
        {
            status.write( msg );
            status.close();
        }
        else if( browser.ie4 ) 
        {
            status.innerHTML = msg;
        }
    }
}

var layerList = new Array();     // Layer array

function getLayer( name ) 
{
   if( browser.DOM )
   {
      return (document.getElementById( name ).style);
   }
   else if( browser.dhtml )
   {
      if( eval( doc + '["' + name + '"]' ) )
         return eval( doc + '["' + name + '"]' + sty );
   }
   return null;
}

function createLayer( z, name, left, top, width, height, visible, content ) 
{
   layerList[ layerList.length ] = name;
   
   if( browser.ns4 ) 
   {
      document.writeln( "<layer name='" + name + "' left=" + left + " top=" + top + " width=" + width + " height=" + height + " visibility=" + (visible ? "'show'" : "'hide'") + " z-index=" + z + ">" );
      document.writeln( content );
      document.writeln( '</layer>');
      var layer = getLayer( name );
      layer.width  = width;
      layer.height = height;
   }
   else if( browser.ie4 ) 
   {
      document.writeln( '<div id="' + name + '" style="position:absolute; overflow:none; left:' + left + 'px; top:' + top + 'px; width:' + width + 'px; height:' + height + 'px;' + ' visibility:' + (visible ? 'visible;' : 'hidden;') + ' z-index:' + z + '">' );
      document.writeln( content );
      document.writeln( '</div>');
   }
   
   clipLayer( name, 0, 0, width, height );
}

function clipLayer( name, clipleft, cliptop, clipright, clipbottom ) 
{
  var layer = getLayer( name );

  if( browser.ns4 ) 
  {
    layer.clip.left   = clipleft;
    layer.clip.top    = cliptop;
    layer.clip.right  = clipright;
    layer.clip.bottom = clipbottom;
  }
  else if( browser.ie4 )
  {
    layer.clip = "rect(" + cliptop + " " +  clipright + " " + clipbottom + " " + clipleft +")";
  }
}

var lastLayer=null;
function hideLayer( name ) 
{
   if( name != null )
   {
      var layer = getLayer( name );
      if( layer )
         layer.visibility = visHide;
   }
}

function showLayer( name ) 
{
   if( lastLayer != name )
   {
      hideLayer( lastLayer );
      lastLayer = name;
      var layer = getLayer( name );
      if( layer )
         layer.visibility = visShow;
   }
}

function showLayerAt( name, x, y ) 
{
   if( lastLayer != name )
   {
      hideLayer( lastLayer );
      lastLayer = name;
      var layer = getLayer( name );
      if( layer )
      {
         // Adjustment for NS
         if( browser.ns4 || browser.DOM )
            y -= 6;  

         moveAbs( name, x, y );
         layer.visibility = visShow;
      }
   }
}

function isVisible( name )
{
   var layer = getLayer( name );
   return layer.visibility == visShow;
}

function getLayerX( name )
{
   var layer  = getLayer( name );
   return parseInt( layer.left );
}

function getLayerY( name )
{
   var layer  = getLayer( name );
   return parseInt( layer.top );
}

function moveAbs( name, x, y ) 
{
   var layer  = getLayer( name );
   layer.left = x;
   layer.top  = y;
}

var mVertTimer = null;
function autoMoveVert( name, dir, dist, pause ) 
{
   var layer = getLayer( name );
   var y_pos = parseInt( layer.top );

   var func = "autoMoveVert( '" + name + "', '" + dir + "', " + dist + "," + pause + " )";

   if( dir == "up" )
   {
      if( y_pos > dist ) 
      {
         layer.top = y_pos - 1;
         mVertTimer = setTimeout( func, parseInt( pause ) );
      }
   }
   else if( dir == "down" ) 
   {
      if( y_pos < dist ) 
      {
         layer.top = y_pos + 1;
         mVertTimer = setTimeout( func, parseInt( pause ) );
      }
   }
}

var mHorizTimer = null;
function autoMoveHoriz( name, dir, dist, pause ) 
{
   var layer = getLayer( name );
   var x_pos = parseInt( layer.left );

   var func = "autoMoveHoriz( '" + name + "', '" + dir + "', " + dist + "," + pause + " )";

   if( dir == "left" )
   {
      if( x_pos > dist ) 
      {
         layer.left = x_pos - 5;
         mHorizTimer = setTimeout( func, parseInt( pause ) );
      }
   }
   else if( dir == "right" ) 
   {
      if( x_pos < dist ) 
      {
         layer.left = x_pos + 5;
         mHorizTimer = setTimeout( func, parseInt( pause ) );
      }
   }
}

var loop        = true;
var scrollTimer = null;

function stopScroll( ) 
{
   loop = false;
   clearTimeout( scrollTimer );
}

function startScroll( name, dir, speed ) 
{
   loop = true;
   scrollLayer( name, dir, speed );
}

function scrollLayer( name, dir, speed ) 
{
   var layer = getLayer( name );
   var y_pos = parseInt( layer.top );
   var x_pos = parseInt( layer.left );

   var func = "scrollLayer( '" + name + "', '" + dir + "', " + speed + " )";
   if( loop == true ) 
   {
      if( dir == "down" ) 
      {
         layer.top = ( y_pos - speed );
         if( scrollTimer )
            clearTimeout( scrollTimer );
         scrollTimer = setTimeout( func, 10 );
      } 
      else if( dir == "up" && (y_pos < 10) ) 
      {
         layer.top = ( y_pos + speed );
         if( scrollTimer )
            clearTimeout( scrollTimer );
         scrollTimer = setTimeout( func, 10 );
      }
      else if( dir == "right" ) 
      {
         layer.left = ( x_pos - speed );
         if( scrollTimer )
            clearTimeout( scrollTimer );
         scrollTimer = setTimeout( func, 10 );
      }
      else if( dir == "left" ) 
      {
         layer.left = ( x_pos + speed );
         if( scrollTimer )
            clearTimeout( scrollTimer );
         scrollTimer = setTimeout( func, 10 );
      }
   }
   if( dir == "top" ) 
   {
      layer.top = 10;
      if( scrollTimer )
         clearTimeout( scrollTimer );
   }
}

function imgTogLyrON( lyrName, imgName )
{ 
   imgToggleLayer( lyrName, imgName, 'on' ); 
}
function imgToggleON( imgName )
{ 
   imgToggle( imgName, 'on' ); 
}
function imgTogLyrOFF( lyrName, imgName )
{ 
   imgToggleLayer( lyrName, imgName, 'off' ); 
}
function imgToggleOFF( imgName )
{ 
   imgToggle( imgName, 'off' ); 
}

function imgToggleLayer( layerName, imgName, mode ) 
{
   if( document.images ) 
   {
      var docImages = eval( (browser.ie4 || browser.DOM) ? "document" : ("document.layers['" + layerName + "'].document") );
      if( (imgName != null) && (docImages[ imgName ] != null) )
         docImages[ imgName ].src = eval( imgName + "_" + mode + ".src" );
   }
   return true;
}
function imgToggle( imgName, mode ) 
{
   if( document.images && (imgName != null) && (document[ imgName ] != null) ) 
      document[ imgName ].src = eval( imgName + "_" + mode + ".src" );
   return true;
}

function dumpProps( obj )
{
   var result = "DumpProps\n";
   for( var i in obj )
      result +=  i + " = " + obj[i] + "\n"
   alert( result );
}

document.ImageResources = new Array();
function addResource( name, resource )
{
   var newArray = document.ImageResources;
   newArray[ name ] = resource;
   document.ImageResources = newArray;
}
function ImageResource( imageName, image, layerName )
{
   this.imageList = new Array();
   this.imageName = imageName;
   this.imageMain = new Image();
   this.imageMain.src = image;
   this.layerName = layerName;
   this.evalStr   = (browser.ie4) ? "document" : ("document.layers['" + layerName + "'].document.images");
   this.loadImage = loadImage;
   this.getImage  = getImage;
}

function loadImage( image, name )
{
   this.imageList[ name ] = new Image();
   this.imageList[ name ].src = image;
}

function getImage( name )
{
   return this.imageList[ name ].src;
}

function changeImage( mainRes, newImage )
{
   var res = document.ImageResources[ mainRes ];
   if( document.images ) 
      eval( res.evalStr + "['" + res.imageName + "'].src = '" + res.getImage( newImage ) + "';" );
}

function resetImage( mainRes )
{
   var res = document.ImageResources[ mainRes ];
   if( document.images )
      eval( res.evalStr + "['" + res.imageName + "'].src = '" + res.imageMain.src + "';" );
}

