/*--- clear inputs ---*/
function clearInputs(){
	$('input:text, input:password, textarea').each(function(){
		var _el = $(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'));
		});
	});
}
/*--- IE6 hover ---*/
function ieHover(_list, _class){
	if($.browser.msie && $.browser.version < 7){
		if(!_class) _class = 'hover';
		$(_list).mouseenter(function(){
			$(this).addClass(_class);
		}).mouseleave(function(){
			$(this).removeClass(_class);
		});
	}
}
/*--- tabs ---*/
function initTabs(){
	$('ul.tabset').each(function(){
		var _btn = $(this).children();
		var _a = _btn.index(_btn.filter('.active:eq(0)'));
		if(_a == -1) _a = 0;
		
		for(var i = 0; i < _btn.length; i++){
			if(_btn.eq(i).find('a').attr('hash').length){
				_btn.eq(i).data('box', $(_btn.eq(i).find('a').attr('hash')));
				_btn.eq(i).data('box').css('display', 'none');
			}
		}
		_btn.removeClass('active').eq(_a).addClass('active').data('box').css('display', 'block');
		_btn.click(function(){
			changeTab(_btn.index(this));
			return false;
		});
		function changeTab(_ind){
			if(_ind != _a){
				_btn.eq(_a).removeClass('active');
				_btn.eq(_ind).addClass('active');
				_btn.eq(_a).data('box').css('display', 'none');
				_btn.eq(_ind).data('box').css('display', 'block');
				_a = _ind;
			}
		}
	});
}
/*--- gallery ---*/
function initGall(){
	var change_speed = 600; //in ms
	var _main_sec = $('div.main_section');
	$('div.detail_holder').each(function(){
		var _hold = $(this);
		var _btn = _hold.find('div.bottom_nav ul li');
		var btn_prev = _hold.find('div.bottom_nav a.btn_prev');
		var btn_next = _hold.find('div.bottom_nav a.btn_next');
		var box_hold = _hold.find('div.main_section');
		var _a = _btn.index(_btn.filter('.active:eq(0)'));
		if(_a == -1) _a = 0;
		var anim_f = false;
		
		box_hold.click(function (){
			if(_a < _btn.length - 1) changeEl(_a + 1);
			else changeEl(0);
		});
		_btn.removeClass('active').eq(_a).addClass('active');
		$.ajax({
			url: _btn.eq(_a).children('a').attr('href'),
			dataType: 'html',
			success: function (_html){
				_btn.eq(_a).data('box', $(_html));
				_btn.eq(_a).data('box').addClass('active_section');
				box_hold.html(_btn.eq(_a).data('box'));
				anim_f = true;
			}
		});
		btn_prev.click(function(){
			if(_a > 0) changeEl(_a - 1);
			else changeEl(_btn.length - 1);
			return false;
		});
		btn_next.click(function(){
			if(_a < _btn.length - 1) changeEl(_a + 1);
			else changeEl(0);
			return false;
		});
		_btn.click(function(){
			changeEl(_btn.index(this));
			return false;
		});
		function changeEl(_ind){
			if(anim_f && _ind != _a){
				anim_f = false;
				if($.browser.msie) _btn.eq(_a).removeClass('active').data('box').removeClass('active_section').hide();
				else _btn.eq(_a).removeClass('active').data('box').removeClass('active_section').animate({opacity: 0}, {queue:false, duration: change_speed});
				if(_btn.eq(_ind).data('box')){
					if($.browser.msie) _btn.eq(_ind).addClass('active').data('box').addClass('active_section').show();
					else _btn.eq(_ind).addClass('active').data('box').addClass('active_section').animate({opacity: 1}, {queue:false, duration: change_speed});
					_a = _ind;
					anim_f = true;
				}
				else{
					$.ajax({
						url: _btn.eq(_ind).children('a').attr('href'),
						dataType: 'html',
						success: function(_html){
							_btn.eq(_ind).data('box', $(_html));
							if($.browser.msie) _btn.eq(_ind).data('box').hide();
							else _btn.eq(_ind).data('box').css('opacity', 0);
							box_hold.append(_btn.eq(_ind).data('box'));
							if($.browser.msie) _btn.eq(_ind).addClass('active').data('box').addClass('active_section').show();
							else _btn.eq(_ind).addClass('active').data('box').addClass('active_section').animate({opacity: 1}, {queue:false, duration: change_speed});
							_a = _ind;
							anim_f = true;
						}
					});
				}
			}
		}
	});
}
$(document).ready(function(){
	clearInputs();
	ieHover('.share, .main_nav li, .bottom_nav .inner ul li, .btn, .placer .title');
	initTabs();
	initGall();
});
