	function Ofte_Scroller(containerWidth, mainContainer) {
		this._mainContainerId = mainContainer;
		this._mainContainerWidth = containerWidth;
		this._isInit = false;
		this._realWidth = 0;
		this._itemIds = new Array();
		this._initTimerId = window.setInterval(createFunc(this, this._init), 100);
		this._moveInt = 2;
		this.addItem = function (itemId) {
			if (this._isInit)
			{
				var Item = document.getElementById(itemId);
				if (Item)
				{
					this._itemContainer.appendChild(Item);
					this._realWidth += Item.offsetWidth;
					this._itemContainer.style.width = (this._realWidth + 625) + 'px';
				}
			} else {
				this._itemIds.push(itemId);
			}
		}
		this.incMoveInt = function() {
			this._moveInt += 2;
			if (this._moveInt > 10)
			{
				this._moveInt = 10;
			}
		}
	}
	Ofte_Scroller.prototype.click = function() {
		var i = 0;
		while (i < this._itemContainer.childNodes.length)
		{
			if (this._itemContainer.childNodes[i].onclick)
			{
				break;
			}
			i++;
		}
		if (i != this._itemContainer.childNodes.length)
		{
			this._itemContainer.childNodes[i].onclick();
		}
	}

	Ofte_Scroller.prototype._init = function() {
		var mContainer = document.getElementById(this._mainContainerId);
		if (!this._isInit && mContainer && this._initTimerId)
		{
			window.clearInterval(this._initTimerId);
			this._mainContainer = mContainer;
			this._mainContainer.style.overflow = 'hidden';
			this._mainContainer.style.width = this._mainContainerWidth + 'px';
			var itemContainer = document.createElement('div');
			itemContainer.style.position = 'relative';
			itemContainer.style.top = '0px';
			itemContainer.style.left = '0px';
			this._itemContainer = itemContainer;
			this._mainContainer.appendChild(this._itemContainer);
			this._isInit = true;
			for (var i = 0; i < this._itemIds.length; i++)
			{
				this.addItem(this._itemIds[i]);
			}
		}
	}
	Ofte_Scroller.prototype.moveToLeft = function () {
		var nextLeft = parseInt(this._itemContainer.style.left) - this._moveInt;
		this.incMoveInt();
		var Item = this._itemContainer.childNodes[0];
		if (parseInt(Item.offsetWidth) < -parseInt(this._itemContainer.style.left))
		{
			this._itemContainer.style.left = (nextLeft + parseInt(Item.offsetWidth)) + 'px';
			this._itemContainer.removeChild(Item);
			this._itemContainer.appendChild(Item);
		} else {
			this._itemContainer.style.left = nextLeft + 'px';
		}
	}

	Ofte_Scroller.prototype.moveToRight = function () {
		if ((parseInt(this._itemContainer.style.left) + this._moveInt) > 0)
		{
			var lastChild = this._itemContainer.lastChild;
			this._itemContainer.removeChild(lastChild);
			this._itemContainer.insertBefore(
				lastChild, this._itemContainer.firstChild
			);
			this._itemContainer.style.left = (parseInt(this._itemContainer.style.left) - parseInt(lastChild.offsetWidth)) + 'px';
		}
		this._itemContainer.style.left = (parseInt(this._itemContainer.style.left) + this._moveInt) + 'px';
		this.incMoveInt();
	}
	Ofte_Scroller.prototype.startMovetoLeft = function () {
		if (this._isInit && (this._realWidth > parseInt(this._mainContainer.style.width)))
		{
			this._moveInt = 2;
			this.timerId = window.setInterval(createFunc(this, this.moveToLeft), 100);
		} else {
			this.timerId = false;
		}
	}
	Ofte_Scroller.prototype.startMovetoRight = function () {
		if (this._isInit && this._realWidth > parseInt(this._mainContainer.style.width))
		{
			this._moveInt = 2;
			this.timerId = window.setInterval(createFunc(this, this.moveToRight), 100);
		} else {
			this.timerId = false;
		}
	}

	Ofte_Scroller.prototype.stop = function () {
		if (this.timerId)
		{
			window.clearInterval(this.timerId);
		}
	}
