var aTickerItems = new Array();

var iTickerTimer = -1;

var iNextTicker  = -1;

var iCurrentTicker = 0; 

function populateObjects()

{

      // Older browsers need not apply

      if(!document.getElementById){ return false; }

      if(!document.createElement) { return false; }

      if(!document.getElementsByTagName){ return false; }

      // Get a reference to the ticker

      var oTicker = document.getElementById("ticker");

      if(!oTicker){ return false; }

      // Get all <li>s

      var aListItems = oTicker.getElementsByTagName("LI");

      if(!aListItems){ return false; }

      for(var i=0; i<aListItems.length; i++)

      {

            aTickerItems.push(aListItems[i].innerHTML);

      }

      // Remove the current items

      oTicker.removeChild(oTicker.getElementsByTagName("UL")[0]);

      // Start the ticker

      showTickerItem(0);

} 

function showTickerItem(iID)

{

      // Validate

      iID = parseInt(iID, 10);

      iID = isNaN(iID) ? 0 : iID;

      if(iID >= aTickerItems.length){ iID = 0; }

      if(iID < 0){ iID = 0; }

      // Get next text

      var sNextText = aTickerItems[iID];

      iCurrentTicker = iID;

      // Lose the current ticker timer

      if(iNextTicker  > 0){ clearInterval(iNextTicker ); iNextTicker  = -1; }

      if(iTickerTimer > 0){ clearInterval(iTickerTimer); iTickerTimer = -1; }

      // Move the SPAN away

      var oCurrentTicker = document.getElementById("currentTickerItem");

      oCurrentTicker.style.left = "1040px";

      // Put the HTML in

      oCurrentTicker.innerHTML = aTickerItems[iID];

      // Start moving

      iTickerTimer = setInterval("moveTicker()", 30);

} 

function moveTicker()

{

      // Get reference

      var oCurrentTicker = document.getElementById("currentTickerItem");

      // What's the next position?

      var iNextPos = parseInt(oCurrentTicker.style.left, 10) - 4;

      var iWidth = parseInt(oCurrentTicker.offsetWidth);

      var iMinimum = 10;

      if(isNaN(iWidth) == false)

      {

            //if(top.location.href.indexOf("smartways") > -1){ document.body.appendChild(document.createTextNode("width: " + iWidth)); }

            if(iWidth > 720)

            {

                  if(top.location.href.indexOf("smartways") > -1)

                  {

                        iMinimum = 750 - iWidth;

                        //document.body.appendChild(document.createTextNode(" " + iMinimum));

                  }

            }

      }

      // Can we move no further?

      if(iNextPos <= iMinimum)

      {

            clearInterval(iTickerTimer);

            iTickerTimer = -1;

            // Set a timeout to move to the next one.

            iNextTicker = setTimeout("showTickerItem(" + (++iCurrentTicker) + ")", 5000);

            return false;

      }

      // Move

      oCurrentTicker.style.left = iNextPos + "px";

} 

populateObjects(); 