$(document).ready(function()
{
	fadeGall();
});
function fadeGall(){
	var wait_time = 2500; // in ms
	var change_speed = 1000; // in ms
	var _hold = $('#content');
	var _nav = $('#nav').find('a');
	var _next = $('div.controls > a.next');
	var _prev = $('div.controls > a.prev');
	var _counter = 0;
	if(_hold.length){
		var _t;
		var _f = true;
		var _list = _hold.find('ul.gallery > li');
		var _btn = $('<ul class="paging"></ul>');
		_hold.append(_btn);
		_list.each(function(_i){
			_btn.append('<li><a href="#">'+(_i+1)+'</a></li>');
		});
		_btn = _btn.find('a');
		var _a = _list.index(_list.filter('.active:eq(0)'));
		if(_a == -1) _a = 0;

		_list.removeClass('active').css('opacity', 0).eq(_a).addClass('active').css('opacity', 1);
		_btn.eq(_a).parent('li').addClass('active');
		_list.click(function(){
			if(_a < _list.length - 1 ){
				changeEl(_a + 1);
			}
			else{
				changeEl(0);
			}
			return false;
		});
		_next.click(function(){
			if(_a < _list.length - 1 ){
				changeEl(_a + 1);
			}
			else{
				changeEl(0);
			}
			return false;
		});
		_prev.click(function(){
			if(_a > 0 ){
				changeEl(_a - 1);
			}
			else{
				changeEl(_list.length - 1);
			}
			return false;
		});
		_btn.click(function(){
			changeEl(_btn.index(this));
			return false;
		});
		_nav.click(function(){
			var _in = _nav.index(this);
			if(_in == 0){
				_counter = 0; 
			}
			if(_in == 1){
				_counter = 7; 
			}
			if(_in == 2){
				_counter = 14; 
			}
			changeEl(_counter);
			return false;
		});
		_hold.mouseenter(function(){
			_f = false;
			if(_t) clearTimeout(_t);
		}).mouseleave(function(){
			_f = true;
			if(_t) clearTimeout(_t);
			if(_f && wait_time){
				_t = setTimeout(function(){
					if(_a < _list.length - 1) changeEl(_a + 1);
					else changeEl(0);
				}, wait_time);
			}
		});
		if(_f && wait_time){
			_t = setTimeout(function(){
				if(_a < _list.length - 1) changeEl(_a + 1);
				else changeEl(0);
			}, wait_time);
		}
		function changeEl(_ind){
			if(_t) clearTimeout(_t);
			if(_ind != _a){
				_list.eq(_a).removeClass('active').animate({opacity: 0}, {queue:false, duration:change_speed});
				_list.eq(_ind).addClass('active').animate({opacity: 1}, {queue:false, duration:change_speed});
				_btn.eq(_a).parent('li').removeClass('active');
				_btn.eq(_ind).parent('li').addClass('active');
				_a = _ind;
			}
			if(_f && wait_time){
				_t = setTimeout(function(){
					if(_a < _list.length - 1) changeEl(_a + 1);
					else changeEl(0);
				}, wait_time);
			}
		}
	}
}
