var
	oSlideTimeout,
	iSlideTimeout = 3,
	iSlideStep = 3,
	iSlidePause = 1000 * 3,
	oLine,
	leftOffset,
	iSpanIndex = 0,
	arSpanWidth = new Array(),
	iCorrection,
	iSteps,
	iCurrentSpan = 0,
	iSpanCount = 0,
	iTranslatorWidth;

function StreamerInit()
{
	var
		oTranslator = document.getElementById("translator");

	oTranslator.style.display = 'block';
	oLine = document.getElementById("line");
	leftOffset = (oLine.offsetLeft ? oTranslator.offsetLeft : 0);

	iTranslatorWidth = oTranslator.offsetWidth;
	var
		arSpan = new Array(),
		j = 0;
	
	iSpanCount = oLine.childNodes.length;

	for(var i = 0; i < oLine.childNodes.length; i ++)
	{
		if(oLine.childNodes[i].nodeType == 1)
		{
			arSpan[j++] = oLine.childNodes[i];
		}
		else
		{
			iSpanCount --;
		}
	}

	if(iSpanCount <= 0)
	{
		oTranslator.style.display = 'none';
		return;
	}

	oLine.style.width = iTranslatorWidth * iSpanCount;

	var iSpansWidth = 0;

	for(var i = 0; i < iSpanCount; i ++)
	{
		var iSpanWidth = (iTranslatorWidth > arSpan[i].offsetWidth ? iTranslatorWidth : arSpan[i].offsetWidth) + 10;
		arSpan[i].style.left = iSpansWidth + 'px';
		arSpanWidth[i] = iSpanWidth;
		iSpansWidth += iSpanWidth;
	}

	oTranslator.style.visibility = 'visible';
	oTranslator.style.width = iTranslatorWidth + 'px';
	iSteps = Math.floor(arSpanWidth[iCurrentSpan]/iSlideStep);
	iCorrection = arSpanWidth[iCurrentSpan] - iSteps * iSlideStep;
	oSlideTimeout = window.setTimeout(slideLine, iSlidePause);
}

function slideLine()
{
	if(iSteps > 0)
	{
		oLine.style.left = (oLine.offsetLeft - leftOffset - iSlideStep) + 'px';
		oSlideTimeout = window.setTimeout(slideLine, iSlideTimeout);
		iSteps --;
	} else {
		oLine.style.left = (oLine.offsetLeft - leftOffset - iCorrection ) + 'px';

		iCurrentSpan ++;

		if(iCurrentSpan >= iSpanCount - 1)
		{
			iCurrentSpan = 0;
			oLine.style.left = (-leftOffset) + 'px';
		}

		iSteps = Math.floor(arSpanWidth[iCurrentSpan]/iSlideStep);
		iCorrection = arSpanWidth[iCurrentSpan] - iSteps * iSlideStep;
		oSlideTimeout = window.setTimeout(slideLine, iSlidePause);
	}
}
if (window.addEventListener) window.addEventListener('load', StreamerInit, false);
else if (window.attachEvent) window.attachEvent('onload', StreamerInit);
