/*
 * jQuery galleryScrollV v1.0.0
 */

jQuery.fn.galleryScrollV = function(_options){
	// defaults options	
	var _options = jQuery.extend({
		btUp: 'a.up-arrow',
		btDown: 'a.down-arrow',
		holder: 'div',
		mover: 'ul',
		scrollEl: 'li',
		duration : 1000,
		tabset: false,
		step: false
	},_options);

	return this.each(function(){
		var _wraper = $(this);
		var _holder = $(_options.holder, _wraper);
		var _mover = $(_options.mover, _holder);
		var _lis = $(_options.scrollEl, _mover);
		var _links = $(_options.tabset, _wraper);
		var _prev = $(_options.btUp, _wraper);
		var _next = $(_options.btDown, _wraper);
		var _step = _options.step ? (_lis.eq(0).outerHeight(true) * _options.step) : _holder.outerHeight();
		var _duration = _options.duration;
		
		var _maxMargin = _lis.length*_lis.eq(0).outerHeight(true)-_holder.outerHeight();
		var _length = Math.floor(_maxMargin/_step)+1;
		var _current = 0;
		var _margin = 0;
		
		if (_maxMargin%_step == 0) _length -= 1;
		
		if (_options.tabset) {
			_links.each(function(link, i){
				$(link).click(function(){
					_links.removeClass('active');
					_margin = _step*i;
					if (i >= _length) _margin = _maxMargin;
					_mover.animate({'marginTop': -_margin}, {duration:_duration, queue:false})
					_current = i;
					$(this).addClass('active');
					return false;
				});
			});
		}
		_next.click(function(){
			if (_options.tabset) {_links.removeClass('active');}
			_current += 1;
			if (_current > _length) _current = 0;
			_margin = _step*_current;
			if (_current >= _length) _margin = _maxMargin;
			_mover.animate({'marginTop': -_margin}, {duration:_duration, queue:false})
			if (_options.tabset) {_links.eq(_current).addClass('active');}
			return false;
		});
		_prev.click(function(){
			if (_options.tabset) {_links.removeClass('active');}
			_current -= 1;
			if (_current < 0) _current = _length;
			_margin = _step*_current;
			if (_current >= _length) _margin = _maxMargin;
			_mover.animate({'marginTop': -_margin}, {duration:_duration, queue:false})
			if (_options.tabset) {_links.eq(_current).addClass('active');}
			return false;
		});
	});
}

$(window).bind('load',function(){
	$('div.select-video').galleryScrollV({
		btUp: 'a.prev',
		btDown: 'a.next',
		holderList: 'div',
		scrollElParent: 'ul',
		scrollEl: 'li',
		duration : 400,
		step: 1
	});
})
