﻿        var scrollerList     = new Array();
       
       
        Type.registerNamespace("Utility");
        
        Utility.PauseScroller = function(x, y, width, height, border, padding) {
                                  this.x = x;
                                  this.y = y;
                                  this.width = width;
                                  this.height = height;
                                  this.border = border;
                                  this.padding = padding;

                                  this.items = new Array();
                                  this.created = false;

                                  // Set default colors.

                                  this.fgColor = "#000000";
                                  this.bgColor = "#ffffff";
                                  this.bdColor = "#000000";

                                  // Set default font.

                                  this.fontFace = "Arial,Helvetica";
                                  this.fontSize = "2";

                                  // Set default scroll timing values.

                                  this.speed = 50;
                                  this.pauseTime = 100;

                                  // Define methods.
                                   
                                  this.stop = this.scrollerStop;
                                  this.start = this.scrollerStart;
                                  
                                   // An array is used to hold a pointer to each scroller that is defined. The
                                   // scrollerGo() function runs at regular intervals and updates each scroller
                                   // in this list.

                               //   this.scrollerList     = new Array();
                                  this.scrollerInterval = 20;
            
                                }

    //*****************************************************************************
    // Scroller methods.
    //*****************************************************************************
    Utility.PauseScroller.prototype = 
    {
            scrollerSetColors:function (fgcolor, bgcolor, bdcolor) {

              if (this.created) {
                alert("Scroller Error: Scroller has already been created.");
                return;
              }
              this.fgColor = fgcolor;
              this.bgColor = bgcolor;
              this.bdColor = bdcolor;
            },

            scrollerSetFont:function(face, size) {

              if (this.created) {
                alert("Scroller Error: Scroller has already been created.");
                return;
              }
              this.fontFace = face;
              this.fontSize = size;
            },

            scrollerSetSpeed:function(pps)  {

              if (this.created) {
                alert("Scroller Error: Scroller has already been created.");
                return;
              }
              this.speed = pps;
            },

            scrollersetPause:function(ms)  {

              if (this.created) {
                alert("Scroller Error: Scroller has already been created.");
                return;
              }
              this.pauseTime = ms;
            },

            scrollerAddItem:function(str)  {

              if (this.created) {
                alert("Scroller Error: Scroller has already been created.");
                return;
              }
              this.items[this.items.length] = str;
            },

            scrollerCreate:function (tempHolder) {

              var start, end;
              var str;
              var i, j;
              var x, y;

              if (!isMinNS4 && !ie && !dom)
                return;

              // On first scroller, start interval timer.

              if (scrollerList.length == 0)
              {
                   var objInstance = this; 
                   var timeLeft = setInterval(function(){objInstance.scrollerGo()},this.scrollerInterval);
              }

              // Create the scroller only once.

              if (this.created) {
                alert("Scroller Error: Scroller has already been created.");
                return;
              }
              this.created = true;

              // Copy first item to the end of the list, this lets us scroll from the last
              // defined item to the first without jumping.

              this.items[this.items.length] = this.items[0];

              // Set up HTML code for item text.

              start = '<table border=0'
                    + ' cellpadding=' + (this.padding + this.border)
                    + ' cellspacing=0'
                    + ' width=' + this.width
                    + ' height=' + this.height + '>'
                    + '<tr><td>'
                    + '<font'
                    + ' color="' + this.fgColor + '"'
                    + ' face="' + this.fontFace + '"'
                    + ' size=' + this.fontSize + '>';
              end   = '</font></td></tr></table>';

              // Build the layers.

              if (isMinNS4) {
                this.baseLayer = new Layer(this.width);
                this.scrollLayer = new Layer(this.width, this.baseLayer);
                this.scrollLayer.visibility = "inherit";
                this.itemLayers = new Array();
                for (i = 0; i < this.items.length; i++) {
                  this.itemLayers[i] = new Layer(this.width, this.scrollLayer);
                  this.itemLayers[i].document.open();
                  this.itemLayers[i].document.writeln(start + this.items[i] + end);
                  this.itemLayers[i].document.close();
                  this.itemLayers[i].visibility = "inherit";
                }

                // Set background colors.

                setBgColor(this.baseLayer, this.bdColor);
                setBgColor(this.scrollLayer, this.bgColor);
              }

              if (ie||dom) {
                i = scrollerList.length;
                str = '<div id="scroller' + i + '_baseLayer"'
                    + ' style="position:relative;'//' style="position:absolute;'
                    + ' background-color:' + this.bdColor + ';'
                    + ' width:' + this.width + 'px;'
                    + ' height:' + this.height + 'px;'
                    + ' overflow:hidden;'
                    + ' visibility:hidden;">'
                    + '<div id="scroller' + i + '_scrollLayer"'
                    + ' style="position:relative;'//' style="position:absolute;'
                    + ' background-color: ' + this.bgColor + ';'
                    + ' width:' + this.width + 'px;'
                    + ' height:' + (this.height * this.items.length) + 'px;'
                    + ' visibility:inherit;">';
                for (j = 0; j < this.items.length; j++) {
                  str += '<div id="scroller' + i + '_itemLayers' + j + '"'
                      +  ' style="position:absolute;' //' style="position:absolute;'
                      +  ' width:' + this.width + 'px;'
                      +  ' height:' + this.height + 'px;'
                      +  ' visibility:inherit;">'
                      +  start + this.items[j] + end
                      +  '</div>';
                }
                str += '</div>'
                    +  '</div>';

                // Insert HTML code at end of page. For IE4, need to scroll window to
                // end of page, insert and scroll back to correct bug.

                if (!(ie&&window.print)) {
                  x = getPageScrollX();
                  y = getPageScrollY();
                  window.scrollTo(getPageWidth(), getPageHeight());
                }
                /*
                if (ie)
                document.all.tempholder.innerHTML=str
                else if (dom)*/
                document.getElementById(tempHolder).innerHTML=str
            //EDIT HERE//////////////////////////////////////////////////////////////////////////////
                if (!(ie&&window.print))
                  window.scrollTo(x, y);

                // Get handles to each layer.

                this.baseLayer = getLayer("scroller" + i + "_baseLayer");
                this.scrollLayer = getLayer("scroller" + i + "_scrollLayer");
                this.itemLayers = new Array();
                for (j = 0; j < this.items.length; j++)
                  this.itemLayers[j] = getLayer("scroller" + i + "_itemLayers" + j);
              }

              // Position and clip base and scroll layers.

              moveLayerTo(this.baseLayer, this.x, this.y);
              clipLayer(this.baseLayer, 0, 0, this.width, this.height);
              moveLayerTo(this.scrollLayer, this.border, this.border);
              clipLayer(this.scrollLayer, 0, 0,
                        this.width - 2 * this.border, this.height - 2 * this.border);

              // Position and clip each item layer.

              x = 0;
              y = 0;
              for (i = 0; i < this.items.length; i++) {
                moveLayerTo(this.itemLayers[i], x, y);
                clipLayer(this.itemLayers[i], 0, 0, this.width, this.height);
                y += this.height;
              }

              // Set up scrolling parameters.

              this.stopped = false;
              this.currentY = 0;
              this.stepY = this.speed / (1000 / this.scrollerInterval);
              this.stepY = Math.min(this.height, this.stepY);
              this.nextY = this.height;
              this.maxY = this.height * (this.items.length - 1);
              this.paused = true;
              this.counter = 0;

              // Add to global list.

              scrollerList[scrollerList.length] = this;

              // Display it.

              showLayer(this.baseLayer);
            },

            scrollerShow:function() {

              if (this.created)

                showLayer(this.baseLayer);
            },

            scrollerHide:function() {

              if (this.created)
                hideLayer(this.baseLayer);
            },

            scrollerMoveTo:function(x, y) {

              if (this.created)
                moveLayerTo(this.baseLayer, x, y);
            },

            scrollerMoveBy:function(dx, dy) {

              if (this.created)
                moveLayerBy(this.baseLayer, dx, dy);
            },

            scrollerGetzIndex:function() {

              if (this.created)
                return(getzIndex(this.baseLayer));
              else
                return(0);
            },

            scrollerSetzIndex:function(z) {

              if (this.created)
                setzIndex(this.baseLayer, z);
            },

            scrollerStart:function() {

              this.stopped = false;
            },

            scrollerStop:function() {

              this.stopped = true;
            },

            //*****************************************************************************
            // Code for scrolling.
            //*****************************************************************************
            scrollerGo:function () {

              var i;

              // Update each scroller object in the list.

              for (i = 0; i < scrollerList.length; i++) {

                // If stopped, skip.

                if (scrollerList[i].stopped);

                // If paused, update counter.

                else if (scrollerList[i].paused) {
                  scrollerList[i].counter += this.scrollerInterval;
                  if (scrollerList[i].counter > scrollerList[i].pauseTime)
                    scrollerList[i].paused = false;
                }

                // Scroll it.

                else {
                  scrollerList[i].currentY += scrollerList[i].stepY;

                  // Pause it if the next item has scrolled into view.

                  if (scrollerList[i].currentY >= scrollerList[i].nextY) {
                    scrollerList[i].paused = true;
                    scrollerList[i].counter = 0;
                    scrollerList[i].currentY = scrollerList[i].nextY;
                    scrollerList[i].nextY += scrollerList[i].height;
                  }

                  // When we reach the end, start over.

                  if (scrollerList[i].currentY >= scrollerList[i].maxY) {
                    scrollerList[i].currentY -= scrollerList[i].maxY;
                    scrollerList[i].nextY = scrollerList[i].height;
                  }

                  scrollLayerTo(scrollerList[i].scrollLayer,0, Math.round(scrollerList[i].currentY),false);
                }
              }
            }
        }
        try{
      
            Utility.PauseScroller.registerClass("Utility.PauseScroller");
            }
            catch(e)
            {
            }

          

function runmikescroll(tempHolder,placeHolder,contentArray) {

         var myScroller1 = new Utility.PauseScroller(0, 0, 165, 100, 0, 0); //(xpos, ypos, width, height, border, padding)
//myScroller1.scrollerSetColors("#006600", "#ccffcc", "#009900"); //(fgcolor, bgcolor, bdcolor)
//myScroller1.scrollerSetFont("Verdana,Arial,Helvetica", 2);

for(j=0;j<contentArray.length;j++)
    myScroller1.scrollerAddItem(contentArray[j]);
/*
myScroller1.scrollerAddItem("<b>Click here for <a href='http://dynamicdrive.com'>Dynamic Drive</a>, the net\'s #1 DHTML site!</b> <br/> <b>Visit <a href='http://www.brainjar.com'>Brain Jar</a>, Mike\'s great coding site!</b>");
myScroller1.scrollerAddItem("<b>Visit <a href='http://www.brainjar.com'>Brain Jar</a>, Mike\'s great coding site!</b><br/><b>Discuss and get help on web coding, at <a href='http://www.codingforums.com'>CodingForums.com</a></b>");
myScroller1.scrollerAddItem("<b>Looking for free JavaScripts? Visit <a href='http://javascriptkit.com'>JavaScript Kit.</a><br/><b>Discuss and get help on web coding, at <a href='http://www.codingforums.com'>CodingForums.com</a></b>");
myScroller1.scrollerAddItem("<b>Discuss and get help on web coding, at <a href='http://www.codingforums.com'>CodingForums.com</a></b><br/><b>Visit <a href='http://www.brainjar.com'>Brain Jar</a>, Mike\'s great coding site!</b>");
*/
   myScroller1.scrollersetPause(2500); //set pause beteen msgs, in milliseconds
   
  var layer;
  var mikex, mikey;

  // Locate placeholder layer so we can use it to position the scrollers.

  layer = getLayer(placeHolder);
  if(layer != null)
  {
      mikex = getPageLeft(layer);
      mikey = getPageTop(layer);
      

      // Create the first scroller and position it.

      myScroller1.scrollerCreate(tempHolder);

      myScroller1.scrollerHide();

      myScroller1.scrollerMoveTo(mikex, mikey);
        
      myScroller1.scrollerSetzIndex(100);

      myScroller1.scrollerShow();
  }
}