
// Константы
HIDE_HEADER_SUBMENU_DELAY = 1500; // Задержка перед исчезновением субменю в шапке (в миллисекундах)
SEARCH_DEFAULT_TEXT = 'Название модели'; // Текст "по-умолчанию" в строке поиска
SIDE_SEARCH_DEFAULT_NAME = 'По названию'; // Текст "по-умолчанию" в строке поиска для названия
SIDE_SEARCH_DEFAULT_NUMBER = 'По номеру'; // Текст "по-умолчанию" в строке поиска для номера


// Функция определяет - произошло ли событие e вне блока block
function utils_isEventOut(block, e) {
	var block = $(block).get(0);
	var html = $('HTML').get(0);
	var parent = $(e.target).get(0);
	var result = parent==block; 
	flag = true;
	while (!result && flag) {
		if (!(parent==html)) {
			parent = $(parent).parent().get(0);
		} else flag = false;
		if ((parent==block) || (parent==undefined)) result = true;
	}
	return !result;
}


// Главное меню в шапке
$(document).ready(function(){
	
	headerSubMenu = null;
	
	function headerHideSubMenu(){
		$('.b-header .items .sub').hide();
		$('.b-header .items A').removeClass('hover');
	}
	
	$('.b-header .items A').hover(
		function() {
			if ( $(this).parent().hasClass('i') ) headerHideSubMenu();
			if ( $(this).next().hasClass('sub') ) {
				clearTimeout(headerSubMenu);
				var w = $(this).width();
				var l = $(this).next().width() - w;
				l = $(this).parent().outerWidth() - w - Math.round(l/2);
				$(this).next().css('left', l+'px').show();
				$(this).addClass('hover');
			}
		},
		function() {
			if ( $(this).next().hasClass('sub') ) {
				headerSubMenu = setTimeout(headerHideSubMenu, HIDE_HEADER_SUBMENU_DELAY)
			}
		}
	);
		
	$('.b-header .items .sub').hover(
		function() {
			clearTimeout(headerSubMenu);
		},
		function() {
			headerSubMenu = setTimeout(headerHideSubMenu, HIDE_HEADER_SUBMENU_DELAY)
		}
	);
	
	$(document).mouseup(function(e){
		if ($('.b-header .menu .sub:visible').length)
			if (utils_isEventOut($('.b-header .menu .sub:visible').parent(), e))
				headerHideSubMenu();
	});
	
});


// Блок поиска
$(document).ready(function(){
	
	$('.b-search .query').focus(function(){
		if ( $(this).val()==SEARCH_DEFAULT_TEXT )
			$(this).val('');
	});
	
	$('.b-search .query').blur(function(){
		if ( $(this).val()=='' )
			$(this).val(SEARCH_DEFAULT_TEXT);
	});
	
});


// Блок поиска в сайдбаре
$(document).ready(function(){
	
	$('.b-sidesearch .name INPUT').focus(function(){
		if ( $(this).val()==SIDE_SEARCH_DEFAULT_NAME )
			$(this).val('');
	});
	
	$('.b-sidesearch .name INPUT').blur(function(){
		if ( $(this).val()=='' )
			$(this).val(SIDE_SEARCH_DEFAULT_NAME);
	});
	
	$('.b-sidesearch .number INPUT').focus(function(){
		if ( $(this).val()==SIDE_SEARCH_DEFAULT_NUMBER )
			$(this).val('');
	});
	
	$('.b-sidesearch .number INPUT').blur(function(){
		if ( $(this).val()=='' )
			$(this).val(SIDE_SEARCH_DEFAULT_NUMBER);
	});
	
});


// Блок списка моделей
$(document).ready(function(){
	
	$('.b-models .header A').click(function(){
		var tab = $(this).attr('rel');
		if ( $('.b-models .'+tab).css('display')=='none' ) {
			$('.b-models .tab').hide();
			$('.b-models .'+tab).show();
			$('.b-models .header A').removeClass('cur');
			$(this).addClass('cur');
		} else {
			$('.b-models .'+tab).hide();
			$(this).removeClass('cur');
		}
		return false;
	});
	
});
