$(document).ready(function(){
	$('div.gallery-area').fadeGall({
		stayTime: 9000,
		changeSpeed: 600,
		btnList: '.pagination-area ul li',
		listHold: 'div.slide'
	});
});
/*--- fade gallery ---*/
jQuery.fn.fadeGall = function(_options){
	var _options = jQuery.extend({
		stayTime: false,				// wait time in ms or 'false' if not needed
		changeSpeed: 1000,				// slide speed in ms
		btnPrev: 'a.btn-prev',			// previous button
		btnNext: 'a.btn-next',			// next button
		btnList: 'ul.gall-nav a',		// navigtion buttons
		btnActive: 'active',			// active class for btn
		listHold: 'div.list-hold > ul'	// list holder
	}, _options);
	return this.each(function(){
		var _hold = jQuery(this);
		var list_hold = jQuery(_options.listHold, _hold);
		var _list = list_hold.children();
		var btn_prev = jQuery(_options.btnPrev, _hold);
		var btn_next = jQuery(_options.btnNext, _hold);
		var _btn = jQuery(_options.btnList, _hold);
		var stay_time = _options.stayTime;
		var change_speed = _options.changeSpeed;
		var active_class = _options.btnActive;
		var _news = $('.news-area').find('li');
		var _a = (_btn.index(_btn.filter('.'+_options.active_class).eq(0)) != -1)?(_btn.index(_btn.filter('.'+_options.active_class).eq(0))):(0);
		var _f = true, _t;
		_btn.removeClass(active_class).eq(_a).addClass(active_class);
		_news.removeClass(active_class).eq(_a).addClass(active_class);
		_list.removeClass(active_class).css('opacity', 0).eq(_a).addClass(active_class).css('opacity', 1);
		_btn.click(function(){
			changeEl(_btn.index(this));
			return false;
		});
		btn_prev.click(function(){
			if(_a > 0) changeEl(_a - 1);
			else changeEl(_list.length - 1);
			return false;
		});
		btn_next.click(function(){
			if(_a < _list.length - 1) changeEl(_a + 1);
			else changeEl(0);
			return false;
		});
		_hold.mouseenter(function(){
			_f = false;
			if(_t) clearTimeout(_t);
		}).mouseleave(function(){
			_f = true;
			if(_t) clearTimeout(_t);
			if(_f && stay_time){
				_t = setTimeout(function(){
					if(_a < _list.length - 1) changeEl(_a + 1);
					else changeEl(0);
				}, stay_time);
			}
		});
		if(_f && stay_time){
			_t = setTimeout(function(){
				if(_a < _list.length - 1) changeEl(_a + 1);
				else changeEl(0);
			}, stay_time);
		}
		function changeEl(_ind){
			if(_t) clearTimeout(_t);
			if(_ind != _a){
				_btn.eq(_a).removeClass(active_class);
				_btn.eq(_ind).addClass(active_class);
				list_hold.stop().height(list_hold.height());
				_list.eq(_a).removeClass(active_class).animate({opacity: 0}, {queue:false, duration: change_speed});
				_list.eq(_ind).addClass(active_class).animate({opacity: 1}, {queue:false, duration: change_speed});
				list_hold.animate({height: _list.eq(_ind).outerHeight()}, change_speed/2, function(){ $(this).height('auto');});
				_news.removeClass(active_class).eq(_ind).addClass(active_class);
				_a = _ind;
			}
			if(_f && stay_time){
				_t = setTimeout(function(){
					if(_a < _list.length - 1) changeEl(_a + 1);
					else changeEl(0);
				}, stay_time);
			}
		}
	});
}