var IE4 = (document.all) ? true : false;
var NS4 = (document.layers) ? true : false;

function fGetWindowWidth() {
  if (NS4) {return window.innerWidth}
  else {return document.body.clientWidth}
}

function fGetWindowHeight() {
  if (NS4) {return window.innerHeight}
  else {return document.body.clientHeight}
}

function fGetPageScrollLeft() {
  if (NS4) {return window.pageXOffSet}
  else {return document.body.scrollLeft}
}

function fGetPageScrollTop() {
  if (NS4) {return window.pageYOffSet}
  else {return document.body.scrollTop}
}

function fSetPosFromTop(id, yCoord) {
  if (NS4) {eval("document." + id).top = yCoord}
  else {eval("document.all." + id).style.top = yCoord}
}

function fSetPosFromLeft(id, xCoord) {
  if (NS4) {eval("document." + id).left = xCoord}
  else {eval("document.all." + id).style.left = xCoord}
}

function fFindHighestZ() {
  var documentDivs = new Array();
  if (NS4) {documentDivs = document.layers}
  else {documentDivs = document.all.tags("DIV")};
  var highestZ = 0;
  for (var i = 0; i < documentDivs.length; i++) {
     var zIndex = (NS4) ? documentDivs[i].zIndex : documentDivs[i].style.zIndex;
     highestZ = (zIndex > highestZ) ? zIndex : highestZ;
  }
  return highestZ;
}

function fSetZposition(id, z) {
  if (NS4) {eval("document." + id).zIndex = z}
  else {eval("document.all." + id).style.zIndex = z}
}

function fMakeLinkedImage(imgID,    // given id
                   imgURL,         // image URL
                   linkURL,        // link URL
                   imgHeight,      // image height
                   imgWidth,       // image width
                   imgAlt,         // alternative image
                   posFromLeft,    // absolute position from left of window
                   posFromTop,     // absolute position from top of window
                   imgVisibility,  // image visibility  (true of false)
                   imgZindex)      // image Z index
  {
  var visibility = (imgVisibility) ? 'visible' : 'hidden';
  document.write(
    '<STYLE TYPE="text/css">',
    '#', imgID, ' {',
      'position: absolute;',
      'visibility: ', visibility, ';',
      'left: ', posFromLeft, ';',
      'top: ', posFromTop, ';',
      'width: ', imgWidth, ';',
      'z-index:', imgZindex,
    '}',
    '</STYLE>',
    '<DIV ID="', imgID, '">',
    '<A HREF="', linkURL, '">',
    '<IMG NAME="', imgID, 'img" ID="', imgID, 'img" SRC="', imgURL, '" ALT="', imgAlt,
    '" BORDER="0" ', 'HEIGHT="', imgHeight, '" WIDTH="', imgWidth, '">',
    '</A></DIV>'
  );
}

function fDoThisCommandEveryIntervalMS(command, interval) {
  setInterval(eval('"' + command + '"'), interval);
}

var windowWidth=0;
var windowHeight=0;
var pageScrollLeft=0;
var pageScrollTop=0;
var imageWidth=55;
var imageHeight=14;
var rightSpacer=5;
var bottomSpacer=5;

function fReposition() {
	oldWindowWidth=windowWidth;
	oldWindowHeight=windowHeight;
	oldPageScrollLeft=pageScrollLeft;
	oldPageScrollTop=pageScrollTop;
	windowWidth=fGetWindowWidth();
	windowHeight=fGetWindowHeight();
	pageScrollLeft=fGetPageScrollLeft();
	pageScrollTop=fGetPageScrollTop();
	if ((windowHeight!=oldWindowHeight)||(windowWidth!=oldWindowWidth)||(pageScrollLeft!=oldPageScrollLeft)||(pageScrollTop!=oldPageScrollTop)){
		fSetPosFromTop("key",windowHeight+pageScrollTop-(imageHeight+bottomSpacer));
		fSetPosFromLeft("key",windowWidth+pageScrollLeft-(imageWidth+rightSpacer));
		var topZ=fFindHighestZ();
		fSetZposition("key",topZ);
	}
}

fMakeLinkedImage("key",		// id
              "/images/scroll-bottom.gif",	// image URL
              "#bottom",  // link URL
              imageHeight,			// height
              imageWidth,			// width
              "Scroll to Bottom",  // alternative
              0,			// position from left
              0,			// position from top
              true,			// visibility
              0);			// z index

fDoThisCommandEveryIntervalMS("fReposition()", 100);

