//<![CDATA[
  
  // Add an event to call on page load
  function attachOnloadEvent(event) {
    if (document.getElementById && document.getElementsByTagName) {
      if (window.addEventListener) window.addEventListener('load', event, false);
      else if (window.attachEvent) window.attachEvent('onload', event);
    }
  }
  
  // Add an event to call when the window is resized
  function attachOnresizeEvent(event) {
    if (document.getElementById && document.getElementsByTagName) {
      if (window.addEventListener) window.addEventListener('resize', event, false);
      else if (window.attachEvent) window.attachEvent('onresize', event);
    }
  }
  
  function getKeyCode(e) {
    var keycode = null;
    if (document.layers) keycode = (e && e.which) ? e.which : null;
    else if (document.all) keycode = (event && event.keyCode) ? event.keyCode : null;
    else if (document.getElementById) keycode = (e && e.which) ? e.which : null;
    return keycode;
  }
  
  // Return the browser style method; use for cross-browser compatibility
  function getStyle(div) {
    if (document.getElementById)
      return document.getElementById(div).style;
    else if (document.all)
      return document.all(div).style;
    else if (document.layers)
      return document.layers[div];
    else
      return false;
  }
  
  function getObject(div) {
    if (document.getElementById)
      return document.getElementById(div);
    else if (document.all)
      return document.all(div);
    else if (document.layers)
      return document.layers[div];
    else
      return false;
  }
  
  // Control the visibility style of an element
  function toggleVisibility(div, override, timeout) {
    var divStyle = getStyle(div);
    if (divStyle) {
      if (override) {
        divStyle.visibility = override;
        if (timeout)
          setTimeout('toggleVisibility("' + div + '");', timeout);
      }
      else {
        if (divStyle.visibility == "hidden")
          divStyle.visibility = "visible";
        else
          divStyle.visibility = "hidden";
      }
    }
  }
  
  // Control the display style of an element
  function toggleDisplay(div, override, timeout) {
    var divStyle = getStyle(div);
    if (divStyle) {
      if (override) {
        divStyle.display = override;
        if (timeout)
          setTimeout('toggleDisplay("' + div + '");', timeout);
      }
      else {
        if (divStyle.display == "none")
          divStyle.display = "inline";
        else
          divStyle.display = "none";
      }
    }
  }
  
  
  function getWindowSize() {
    var windowWidth = 0, windowHeight = 0;
    
    if (typeof(window.innerWidth) == 'number') {
      //Non-IE
      windowWidth = window.innerWidth;
      windowHeight = window.innerHeight;
      } else if( document.documentElement &&
        ( document.documentElement.clientWidth || document.documentElement.clientHeight ) ) {
      //IE 6+ in 'standards compliant mode'
      windowWidth = document.documentElement.clientWidth;
      windowHeight = document.documentElement.clientHeight;
    } else if( document.body && ( document.body.clientWidth || document.body.clientHeight ) ) {
      //IE 4 compatible
      windowWidth = document.body.clientWidth;
      windowHeight = document.body.clientHeight;
    }
    
    return new Array(windowWidth, windowHeight);
  }
  
  function initLayout() {
    // IE doesn't support object storage, so getObject() must be called twice...
    if (getObject('window_height')) getObject('window_height').value=getWindowSize()[1];
    //getObject('scroll_y_position').value=0;
    if (navigator.userAgent.indexOf('Safari')!=-1)
      if (getObject('is_safari')) getObject('is_safari').value=1;
    if (navigator.userAgent.indexOf('Windows')!=-1)
      if (getObject('is_win')) getObject('is_win').value=1;
    if (getObject('initialize')) getObject('initialize').submit();
  }
  
  // Safari doesn't play nicely with the onResize event, so use
  //  resetLayout() to force a zero window_height, then detect
  //  that zero window_height and refresh again...
  function resetLayout() {
    if (getObject('window_height')) getObject('window_height').value=0;
    if (navigator.userAgent.indexOf('Safari')!=-1)
      if (getObject('is_safari')) getObject('is_safari').value=1;
    if (navigator.userAgent.indexOf('Windows')!=-1)
      if (getObject('is_win')) getObject('is_win').value=1;
    if (getObject('initialize')) getObject('initialize').submit();
  }
  
  
  // preloadImages(): Preload the given array of images, usually used before
  // drawing the page.
  
  function preloadImages(images)
  {
      imageList = new Array ();
      for (counter in images) {
          imageList[counter] = new Image();
          imageList[counter].src = images[counter];
      }
  }
  
  function popWin(x, wi, he){
    w = screen.width;
    h = screen.height;
    sx = w/2-wi/2;
    sy = h/2-he/2;
    window.open(x,'','status=no,resizable=no,scrollbars=no,toolbar=no,location=no,directories=no,menubar=no,width='+wi+',height='+he+',top='+sy+',left='+sx+',screenX='+sx+',screenY='+sy+'');
  }

//]]>
