function SlideTo(sId, nPos, nClick)
{  var oDiv = document.getElementById(sId);
   oDiv.slide_target = nPos * oDiv.offsetWidth;
   oDiv.slide_speed = 1;
   oDiv.slide_click = nClick;
   SlideIt(oDiv);
}

function SlideIt(oDiv)
{  if (oDiv.idTimer)
   {  clearTimeout(oDiv.idTimer);
      oDiv.idTimer = null;
   }
   
   var nDiff = oDiv.scrollLeft - oDiv.slide_target;
   if (nDiff == 0)
   {  oDiv.slide_target += oDiv.offsetWidth;

      if ((oDiv.slide_target + 50) >= oDiv.firstChild.offsetWidth)
      {	 oDiv.scrollLeft = 0;
         oDiv.slide_target = oDiv.offsetWidth;
      }

      if (oDiv.slide_btn) oDiv.slide_btn.className = oDiv.slide_btn.className.substr(3);
      oDiv.slide_btn = document.getElementById(oDiv.id + (oDiv.scrollLeft / oDiv.offsetWidth) );
      if (oDiv.slide_btn) oDiv.slide_btn.className = 'Cur' + oDiv.slide_btn.className;

      oDiv.slide_speed = 1;

      oDiv.idTimer = setTimeout(function () {SlideIt(oDiv);}, 
            1000 * (oDiv.slide_click ? 45 : 12));

      oDiv.slide_click = 0;
      return;
   }

   if (nDiff < 0) nDiff = 0 - nDiff;

   var nChg = nDiff / 2;
   if (nChg > 125) nChg = 125;
   if (nChg > (oDiv.slide_speed*2)) nChg = oDiv.slide_speed*2;
   if (nDiff < 3) nChg = nDiff;

   oDiv.slide_speed = nChg;
   if (oDiv.scrollLeft > oDiv.slide_target)
      oDiv.scrollLeft -= nChg;
   else
      oDiv.scrollLeft += nChg;

   oDiv.idTimer = setTimeout(function () {SlideIt(oDiv);}, 25);
}   

