/*--- slide gallery ---*/
function slideGall(){
	var _speed = 800; //in ms
	$('div.gallery').each(function(){
		var _hold = $(this);
		var list_hold = _hold.find('div.gallery-holder > ul');
		var btn_prev = _hold.find('a.prev-btn');
		var btn_next = _hold.find('a.next-btn');
		var hold_w = list_hold.parent().width();
		var list_w = list_hold.children().length * list_hold.children().outerWidth();
		btn_prev.addClass('disabled');
		btn_next.addClass('disabled');
		if(list_w > hold_w){
			btn_next.removeClass('disabled');
			var _a = 0;
			var _max = Math.ceil(list_w/hold_w);
			var _step = hold_w;
			var _btn = $('<ul></ul>');
			for(var i = 0; i < _max; i++){
				_btn.append('<li><a href="#">'+(i+1)+'</a></li>');
			}
			$('<div class="switcher"><div></div></div>').appendTo(_hold).children('div').append(_btn);
			_btn = _btn.find('a');
			_btn.eq(_a).addClass('active');
			_btn.click(function(){
				moveList(_btn.index(this));
				return false;
			});
		}
		btn_prev.click(function(){
			if(!btn_prev.hasClass('disabled')) moveList(_a - 1);
			return false;
		});
		btn_next.click(function(){
			if(!btn_next.hasClass('disabled')) moveList(_a + 1);
			return false;
		});
		function moveList(_ind){
			if(_ind != _a){
				if(_ind == 0) btn_prev.addClass('disabled');
				else btn_prev.removeClass('disabled');
				if(_ind == _max-1) btn_next.addClass('disabled');
				else btn_next.removeClass('disabled');
				_btn.eq(_a).removeClass('active');
				_btn.eq(_ind).addClass('active');
				list_hold.animate({left:-_step*_ind},{queue:false, duration:_speed});
				_a = _ind;
			}
		}
	});
}
/*--- fade gallery ---*/
function fadeGall(){
	var stay_time = 3000; //in ms
	var change_speed = 700; //in ms
	$('div.banner > div.text').each(function(){
		var _hold = $(this);
		var _list = _hold.children('div.holder');
		var _a = _list.index(_list.filter('.active:eq(0)'));
		if(_a == -1) _a = 0;
		var _t;
		_list.removeClass('active').css('opacity', 0).eq(_a).addClass('active').css('opacity', 1);
		if(_list.length > 1){
			_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){
				_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});
				_a = _ind;
			}
			_t = setTimeout(function(){
				if(_a < _list.length -1) changeEl(_a + 1);
				else changeEl(0);
			}, stay_time+change_speed);
		}
	});
}
/*---- clear inputs ---*/
function clearInputs(){
	$('input:text, input:password, textarea').each(function(){
		var _el = $(this);
		var _val = _el.val();
		_el.bind('focus', function(){
			if(this.value == _val) this.value = '';
		}).bind('blur', function(){
			if(this.value == '') this.value = _val;
		});
	});
}

/*--- slide gallery 2 ---*/
function slideGall2(){
	var stay_time = 5000; //in ms
	var change_speed = 700; //in ms
	$('div.slide-gall2').each(function(){
		var _hold = $(this);
		var list_hold = _hold.children('ul');
		var _list = list_hold.children();
		var _w = list_hold.width();
		var _a = _list.index(_list.filter('.active:eq(0)'));
		if(_a == -1) _a = 0;
		var _t;
		_list.removeClass('active').css('left',_w).eq(_a).css('left', 0).addClass('active');
		list_hold.height(_list.eq(_a).outerHeight());
		_t = setTimeout(function(){
			if(_a < _list.length - 1) changeEl(_a + 1);
			else changeEl(0);
		}, stay_time);
		
		function changeEl(_ind){
			if(_t) clearTimeout(_t);
			if(_a != _ind){
				list_hold.animate({height: _list.eq(_ind).outerHeight()}, change_speed);
				_list.eq(_a).removeClass('active').animate({left: -_w}, change_speed);
				_list.eq(_ind).css('left', _w).addClass('active').animate({left: 0}, change_speed);
				_a = _ind;
			}
			_t = setTimeout(function(){
				if(_a < _list.length - 1) changeEl(_a + 1);
				else changeEl(0);
			}, stay_time + change_speed);
		}
	});
}
$(document).ready(function(){
	slideGall();
	fadeGall();
	slideGall2();
	clearInputs();
});
