// Scroll animation for main index news.
// (C) Data Expedition, Inc. 2008

// Host page must define:
//  ScrollMessage  Array of strings
//  MessageCount   Number of ScrollMessage to use
//  DisplayCount   Number of displayable rows
//  DisplayHeight  Height of each row
//  ScrollPause    Pause between movement

var NextTop = 0;
var TopHeight;
var BottomHeight;

var myrows;
var timer;

function initMsg()
{
   var element;
   element = document.getElementById('container');
   myrows = element.getElementsByTagName("div");
   setMsg();
}

function setMsg()
{
   var i;
   
   TopHeight = DisplayHeight;
   BottomHeight = 0;
   
   for (i=0; i <= DisplayCount; i++) {
      myrows[i].innerHTML=ScrollMessage[(i+NextTop)%MessageCount];
      myrows[i].style.top = i*(DisplayHeight);
      if (i < DisplayCount)
         myrows[i].style.height = DisplayHeight;
      else {
         myrows[i].style.height = 0;
         myrows[i].style.display = "none";
      }
   }
   
   window.setTimeout("timer = window.setInterval('doSlide()',25);",ScrollPause);
   
}

function doSlide() {
  var i;
   TopHeight--;
   BottomHeight++;

   if (TopHeight < 0) {
      nextSlide();
   } else {
      for (i=0; i <= DisplayCount; i++) {
         myrows[i].style.top = (i*(DisplayHeight))-BottomHeight;
      }
      myrows[DisplayCount].style.height = BottomHeight;
      myrows[DisplayCount].style.display = "";
   }
}

function nextSlide() {
  clearInterval(timer);
  NextTop = (NextTop + 1)%MessageCount;
  setMsg();
}
