onload = initJS;

function initJS() {
     initTrail();
     startBanner();
     }

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

     var interval = 20;
     var increment = 1;
     var pause = 900;
     var bannerColor = "#ffffff";
     var leftPadding = 3;
     var topPadding = 2;

     var bannerLeft = (NS4) ? document.images.holdspace.x :
       holdspace.offsetLeft;
     var bannerTop = (NS4) ? document.images.holdspace.y :
       holdspace.offsetTop;
     var bannerWidth = (NS4) ? document.images.holdspace.width :
       holdspace.width;
     var bannerHeight = (NS4) ? document.images.holdspace.height :
       holdspace.height;

     var ar = new Array(
       '<CENTER><FONT SIZE=-1><FONT FACE="Arial"><FONT COLOR="#082197"><B></B></FONT><FONT COLOR="#D71C1C"><B></B></FONT>',
       '<CENTER><FONT SIZE=-1><FONT FACE="Arial">',
       '<CENTER><FONT SIZE=-1><FONT FACE="Arial">',
       '<CENTER><FONT SIZE=-1><FONT FACE="Arial">',
       '<CENTER><FONT SIZE=-1><FONT FACE="Arial"> <FONT COLOR="#AA5E3D"><B></B></FONT> <FONT SIZE=-2>',
       '<CENTER><FONT SIZE=-1><FONT FACE="Arial"><FONT COLOR="#1FADDB"><B></B></FONT> <FONT SIZE=-2>',
       '<CENTER><FONT SIZE=-1><FONT FACE="Arial"> <FONT COLOR="#C00000"><B></B></FONT> <FONT SIZE=-2>',
       '<CENTER><FONT SIZE=-1><FONT FACE="Arial"> <FONT COLOR="#683D9D"><B></B></FONT> <FONT SIZE=-2>',
       '<CENTER><FONT SIZE=-1><FONT FACE="Arial"><FONT COLOR="#082194"><B></B></FONT> <FONT SIZE=-2>',
       '<CENTER><FONT SIZE=-1><FONT FACE="Arial"><FONT COLOR="#989898"><B></B></FONT> <FONT SIZE=-2>',
       '<CENTER><FONT SIZE=-1><FONT FACE="Arial"><FONT COLOR="#2C8D00"><B></B></FONT> <FONT SIZE=-2>',
       '<CENTER><FONT SIZE=-1><FONT FACE="Arial"> <FONT COLOR="#CCA300"><B></B></FONT> <FONT SIZE=-2>',
       '<CENTER><FONT SIZE=-1><FONT FACE="Arial">'
     );

     function showMessage(n, show) {
       var whichEl = (NS4) ? eval("message" + n) :
                             eval("message" + n + ".style");
       whichEl.visibility = (show) ? ((NS4) ? "show" : "visible") :
                                     ((NS4) ? "hide" : "hidden");
     }

     function nextMessage() {
       var fromInd = current;
       current = (fromInd == ar.length - 1) ? 0 : fromInd + 1;
       scrollBanner(fromInd, current);
     }

     function moveUp() {
       if (NS4) {
         fromEl.top -= increment;
         if (toEl.top - increment <= toElTarget) {
           toEl.top = toElTarget;
           clearInterval(intervalID);
           fromEl.visibility = "hide";
           timeoutID = setTimeout("nextMessage()", pause);
         } else {
           toEl.top -= increment;
         }
       } else {
         fromEl.pixelTop -= increment;
         if (toEl.pixelTop - increment <= toElTarget) {
           toEl.pixelTop = toElTarget;
           clearInterval(intervalID);
           fromEl.visibility = "hidden";
           timeoutID = setTimeout("nextMessage()", pause);
         } else {
           toEl.pixelTop -= increment;
         }
       }
     }

     function scrollBanner(from, to) {
       if (NS4) {
         fromEl = eval("message" + from);
         toEl = eval("message" + to);
         toEl.top = fromEl.top + bannerHeight;
         toElTarget = fromEl.top;
       } else {
         fromEl = eval("message" + from + ".style");
         toEl = eval("message" + to + ".style");
         toEl.pixelTop = fromEl.pixelTop + bannerHeight;
         toElTarget = fromEl.pixelTop;
       }
       showMessage(to, true); // show the upcoming message
       intervalID = setInterval("moveUp()", interval);
     }

     function makeIE() {
       // assign the necessary code to a variable
       var text = '<DIV ID="banner" STYLE="position:absolute; z-index: 10">';
       for (var i = ar.length - 1; i >= 0; i--) {
         text += '<DIV ID="message' + i + 
                 '" STYLE="position:absolute; z-index: 10"></DIV>';
       }
       text += '</DIV>';

       // insert the code before the end of the document
       document.body.insertAdjacentHTML("BeforeEnd", text);

       // define the main element's properties
       with (banner.style) {
         width = bannerWidth;
         height = bannerHeight;
         clip = "rect(0 " + bannerWidth + " " + bannerHeight + " 0)";
         backgroundColor = bannerColor;
         pixelLeft = bannerLeft;
         pixelTop = bannerTop;
       }

       // define the child elements' properties
       for (i = 0; i < ar.length; i++) {
         with (eval("message" + i + ".style")) {
           visibility = "hidden";
           pixelLeft = leftPadding;
           pixelTop = topPadding;
           width = bannerWidth - leftPadding;
           backgroundColor = bannerColor;
         }
       }
     }

     function makeNS() {
       // create the main element
       banner = new Layer(bannerWidth);

       // define the main element's properties
       with (banner) {
         clip.right = bannerWidth;
         clip.bottom = bannerHeight;
         document.bgColor = bannerColor;
         left = bannerLeft;
         top = bannerTop;
         visibility = "show";
       }

       // define the child elements' properties
       for (var i = 0; i < ar.length; i++) {
         // create a child element
         eval("message" + i + " = " + 
              "new Layer(bannerWidth - leftPadding, banner)");
         with(eval("message" + i)) {
           visibility = "hide";
           left = leftPadding;
           top = topPadding;
           document.bgColor = bannerColor;
         }
       }
     }

     function fillBanner() {
       var whichEl;
       if (NS4) {
         for (var i = 0; i < ar.length; i++) {
           whichEl = eval("message" + i);
           whichEl.document.write(ar[i]);
           whichEl.document.close();
         }
       } else {
         for (var i = 0; i < ar.length; i++) {
           whichEl = eval("message" + i);
           whichEl.innerHTML = ar[i];
         }
       }
     }

     function startBanner() {
       if (NS4)
         makeNS()
       else
         makeIE();
       fillBanner();
       showMessage(0, true);
       current = 0;
       timeoutID = setTimeout("nextMessage()", pause);
     }

var isNS = (navigator.appName == "Netscape");
layerRef = (isNS) ? "document" : "document.all";
styleRef = (isNS) ? "" : ".style";

var OFFX = 20;
var OFFY = 20;

function processMouse(e) {
	if (isNS) {
		document.jhrc.left = e.pageX - OFFX;
		document.jhrc.top = e.pageY + OFFY;
	} else {
		document.all.jhrc.style.pixelLeft = event.clientX + document.body.scrollLeft - OFFX;
		document.all.jhrc.style.pixelTop = event.clientY + document.body.scrollTop + OFFY;
	}
}
function initTrail() {
	if (isNS) document.captureEvents(Event.MOUSEMOVE);
	document.onmousemove = processMouse;
}	
