/* 
 * © Infolio / 2° | http://www.infolio.ru/
 * Автор: Золотов Никита (nikita at infolio.ru)
 *
 */

$(function(){
	
	// Переключатель горячих предложений на главной
	var hotList = $('#index-page .hot-sale-list'),
		hotListItems = $('li', hotList),
		hotListLinks = $('a', hotListItems),
		hotCars = $('#index-page .hot-sale-cars'),
		hotCarsContainer = $('.hot-sale-cars-container', hotCars);
	
	if( hotList.length ){
		$('#container').css('overflow', 'hidden');
	
		hotListItems.eq(0).addClass('selected');
		
		hotListLinks.mouseover(function(){
			var thisLink = $(this),
				thisPosition = hotListLinks.index(this),
				thisListItem = thisLink.parent();
			
			hotListItems.removeClass('selected');
			thisListItem.addClass('selected');
			
			hotCarsContainer.stop().animate({
				top: (thisPosition * (-358)) + 30
			}, 500);
		});
		
		/*hotListLinks.click(function(){
			return false;
		});*/
	}

//////////////////////////////////////////
// dirty code 1

	$('#search .brands input, #search .place input').css({
		position: 'absolute',
		left: '-9999px',
		zIndex: '-1'
	});
	$('#search .brands label, #search .place label').each(function(){
		var checkbox = $('#' + $(this).attr('for'));
		if( checkbox[0].checked == true )
			$(this).addClass('checked')
		else
			$(this).removeClass('checked');
	});
	$('#search .brands input, #search .place input').click(function(){
		var label = $('[for=' + $(this).attr('id') + ']');
		if( this.checked == true )
			label.addClass('checked');
		else
			label.removeClass('checked');
	});
/////////////////////////////////////////////
	
	$('#search .years p').hide();
	
	$('#year-trackbar').trackbar({
		onMove: function(){
			$('#f_year_left').val(this.leftValue);
			$('#f_year_right').val(this.rightValue);
		},
		width: 175,
		leftLimit: 2003,
		leftValue: $('#f_year_left').val(),
		rightLimit: 2010,
		rightValue: $('#f_year_right').val(),
		precisePositioning: true,
		showSmallTicks: true,
		showBigTicks: true,
		showBigTicksText: false,
		tickDivider: 7,
		tickRoundUp: 1
	});
	
	$('.image-lent').imageLent({
		fileNamePostfix: '_big'
	});
	
	$('.pack').detailsToggler({
		showDetailsText: 'Показать комлектацию автомобиля полностью',
		hideDetailsText: 'Скрыть комлектацию автомобиля'
	});
	
	$('#content .search-hide').detailsToggler({
		showDetailsText: 'показать поиск',
		hideDetailsText: 'поиск мешается, свернуть',
		open: true
	});
	
	checkForm();
});

// Простейшая проверка формы на обязательные поля и на правильность e-mail
function checkForm(){
	$('#feedback').submit(function(){
		var errorFlag = false;
		
		$(this).find('.error').remove();
		
		$('.required', this).each(function(){
			if( $(this).val() == '' ){
				$(this).after('<span class="error">обязательное поле</span>');
				errorFlag = true;
			}
		});
		
		if( $('#f_email', this).val() != '' &&  !(/^\w+@\w+\.[a-z]{2,4}$/.test( $('#f_email', this).val() )) ){
			$('#f_email').after('<span class="error">неправильный e-mail</span>');
			errorFlag = true;
		}
		
		if( errorFlag )
			return false;
		else
			return true;
	});
}


/*
 * Плагин показывает/скрывает детали
 * По умолчанию детали скрыты
 *
 */
$.fn.detailsToggler=function(b){var c={showDetailsText:'Подробнее',hideDetailsText:'Скрыть подробности',togglerElement:'p',togglerClassShow:'show-details',togglerClassHide:'hide-details',togglerLinkClass:'dashed',open:false};$.extend(c,b);return this.each(function(){var a=$(this),toggler,togglerLink;if(!c.open)a.hide();createToggler();assignEvents();function createToggler(){toggler=$('<'+c.togglerElement+'></'+c.togglerElement+'>');if(c.open)toggler.attr('class',c.togglerClassHide);else toggler.attr('class',c.togglerClassShow);togglerLink=$('<a></a>');togglerLink.attr({'href':'#','class':c.togglerLinkClass});if(c.open)togglerLink.text(c.hideDetailsText);else togglerLink.text(c.showDetailsText);toggler.append(togglerLink);a.before(toggler)};function assignEvents(){togglerLink.click(function(){if(a.css('display')=='none')showDetails();else hideDetails()})};function showDetails(){a.show();toggler.attr('class',c.togglerClassHide);togglerLink.text(c.hideDetailsText)};function hideDetails(){a.hide();toggler.attr('class',c.togglerClassShow);togglerLink.text(c.showDetailsText)}})};

/*
 * Простая галерея изображений
 * Есть одна большая картинка и лента маленьких превьюшек.
 * При клике на превью заменяется большая картинка.
 *
 */
$.fn.imageLent=function(c){var d={originalImageId:'original-image',activeClass:'active',filePostfix:'',addTargetBlank:true};$.extend(d,c);return this.each(function(){var b=$('a',this),originalImage=$('#'+d.originalImageId);if(d.addTargetBlank){originalImage.parent('a').attr('target','_blank')}assignEvents();function assignEvents(){b.click(function(){var a=$(this).attr('href').replace(/\.(jpg|jpeg|png|gif)$/,"$'"+d.fileNamePostfix+'.$1');originalImage.attr('src',a);originalImage.parent('a').attr('href',$(this).attr('href'));b.each(function(){$(this).removeClass(d.activeClass);$(this).children("span").remove()});$(this).addClass(d.activeClass);$(this).append("<span></span>");$(this).blur();return false})}})};
