(function($)
{
	$.itemScroller = function(wrapper, delay)
	{
		var _scroller = $('#gallery-thumbs-strip');
		var _leftArrow = $('#arrow-left');
		var _rightArrow = $('#arrow-right');
		var _positionHolder = $('#current_pos');
		var itemsCount = _scroller.children('a').length;
		var itemWidth = 160;
		var itemsVisibleCount = Math.floor(5);
		var canNavigate = true;
		
		if(_positionHolder.val() == 1) {_leftArrow.addClass('disabled').css({opacity:'0.3', cursor:'default'});}
		if(_positionHolder.val() == (itemsCount-itemsVisibleCount+1)) {_rightArrow.addClass('disabled').css({opacity:'0.3', cursor:'default'});}
		_scroller.css({marginLeft:'-'+parseInt((_positionHolder.val()-1)*itemWidth)+'px'});

		_leftArrow.mousedown(function(e)
		{
			e.preventDefault(); 
			if((_positionHolder.val() > 1) && canNavigate)
			{
				var currPosition = (parseInt(_positionHolder.val()) - 1); canNavigate = false;
				_positionHolder.val(currPosition);
				if(currPosition == 1) {_leftArrow.addClass('disabled').css({cursor:'default'}).animate({opacity:'0.3'}, 600);}
				if(_rightArrow.hasClass('disabled')) {_rightArrow.removeClass('disabled').css({cursor:'pointer'}).animate({opacity:'1.0'}, 600)}
				_scroller.animate({marginLeft:'-'+parseInt((currPosition-1)*itemWidth)+'px'}, delay, 'swing', function() {canNavigate = true;});
			}
		});
		_rightArrow.mousedown(function(e)
		{
			e.preventDefault();
			if((_positionHolder.val() < (itemsCount-itemsVisibleCount+1)) && canNavigate)
			{
				var currPosition = (parseInt(_positionHolder.val()) + 1); canNavigate = false;
				//currPosition += 1; canNavigate = false;
				_positionHolder.val(currPosition);
				if(currPosition == (itemsCount-itemsVisibleCount+1)) {_rightArrow.addClass('disabled').css({cursor:'default'}).animate({opacity:'0.3'}, 600);}
				if(_leftArrow.hasClass('disabled')) {_leftArrow.removeClass('disabled').css({cursor:'pointer'}).animate({opacity:'1.0'}, 600)}
				_scroller.animate({marginLeft:'-'+parseInt((currPosition-1)*itemWidth)+'px'}, delay, 'swing', function() {canNavigate = true;});
			}
		});
	};
	$.fn.itemScroller = function(delay)
	{
		return this.each(function() {$.itemScroller(this, delay);});
	};
})(jQuery);
