jQuery(function(){
	clearInputs();
	jQuery('#prev-next').each(function(){
		if(jQuery(this).find('a').length == 0) jQuery(this).remove();
	});
	jQuery('#info div.box').each(function(_i){
		jQuery(this).addClass('box-'+(_i+1));
	});
	homeVisual();
	TourGall();
	jQuery('#info .box').hoverclass();
});

// jQuery Infinity Hover Class
(function($){$.fn.hoverclass=function(){return this.each(function(){$(this).bind('mouseover',function(){$(this).addClass('active')}).bind('mouseout',function(){$(this).removeClass('active')}).bind('click',function(){window.location=$('a',this).attr('href')})})}})(jQuery);
/*--- tour gallery ---*/
function TourGall(){
	var stay_time = 5000; //in ms
	var move_speed = 500; //in ms
	var change_speed = 500; //in ms
	jQuery('div.t-gallery').each(function(){
		var _hold = jQuery(this);
		var _list = _hold.find('ul.list > li');
		var btn_hold = _hold.find('div.nav-hold ul');
		var _btn = btn_hold.children();
		var btn_prev = _hold.find('div.nav-hold span.btn-prev');
		var btn_next = _hold.find('div.nav-hold span.btn-next');
		var btn_w = _btn.outerWidth(true) * _btn.length;
		var _step = _btn.outerWidth(true);
		var btn_hold_w = btn_hold.parent().width();
		var _a = _list.index(_list.filter('.active:eq(0)')) != -1 ? _list.index(_list.filter('.active:eq(0)')) : 0;
		var _m = 0, _f = true, _t;

		_list.removeClass('active').css('opacity', 0).eq(_a).addClass('active').css('opacity', 1);
		_btn.removeClass('active').eq(_a).addClass('active');
		
		_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(_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){
				_m = _btn.eq(_ind).position().left;
				if(_m + _step > btn_w - btn_hold_w) _m = btn_w - btn_hold_w;
				_btn.eq(_a).removeClass('active');
				_btn.eq(_ind).addClass('active');
				btn_hold.animate({left: -_m},{queue:false, duration:change_speed});
				_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;
			}
			if(_f && stay_time){
				_t = setTimeout(function(){
					if(_a < _list.length - 1) changeEl(_a + 1);
					else changeEl(0);
				}, stay_time+change_speed);
			}
		}
		
	});
}
/*--- home visual ---*/
function homeVisual(){
	var stay_time = 5000; //in ms
	var change_speed = 500; //in ms
	jQuery('div.visual-holder').each(function(){
		var _hold = jQuery(this);
		var _list = _hold.find('#slider > img');
		var _a = _list.index(_list.filter('.active:eq(0)')) != -1 ? _list.index(_list.filter('.active:eq(0)')) : 0;
		var _t, _f = true;
		if(_list.length > 1){
			_hold.append('<div id="nav"></div>');
			for(var i=0; i < _list.length; i++) _hold.find('#nav').append('<a href="#">'+(i+1)+'</a>');
			var _btn = _hold.find('#nav a');
			
			_list.removeClass('active').css('opacity', 0).eq(_a).addClass('active').css('opacity', 1);
			_btn.eq(_a).addClass('active');
			_btn.click(function(){
				changeEl(_btn.index(this));
				return false;
			});
			
		
			/*
			_hold.mouseenter(function(){
				_f = false;
				if(_t) clearTimeout(_t);
			}).mouseleave(function(){
				_f = true;
				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');
				_btn.eq(_ind).addClass('active');
				_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;
			}
			if(_f && stay_time){
				_t = setTimeout(function(){
					if(_a < _list.length - 1) changeEl(_a + 1);
					else changeEl(0);
				}, stay_time+change_speed);
			}
		}
	});
}
/*---- clear inputs ---*/
function clearInputs(){
	jQuery('input:text, input:password, textarea').each(function(){
		var _el = jQuery(this);
		_el.data('val', _el.val());
		_el.bind('focus', function(){
			if(_el.val() == _el.data('val')) _el.val('');
		}).bind('blur', function(){
			if(_el.val() == '') _el.val(_el.data('val'));
		});
	});
}
