var map;
var map_large;

/*var preload_city_img = new Image();
preload_city_img.src = '/template/images/select_bg_red_hover.gif';
var preload_city_opened_img = new Image();
preload_city_opened_img.src = '/template/images/city_selector_opened_bg.gif';
var preload_cart_img = new Image();
preload_cart_img.src = '/template/images/select_bg_gray_hover.gif';*/

$(function() {
	if ($.browser.msie)
	{
		$('.brands-open LI').css({'width': '25%', 'float': 'left', 'margin-right': '2%', 'margin-left': '0px'});
	}

	$('.catalog>LI').mouseover(function() {
		if (!$(this).hasClass('discount'))
		{
			var i = $(this);
			i.css('background', 'url("/template/images/item_border.gif") top left');
		}
	});
	$('.catalog>LI').mouseout(function() {
		if (!$(this).hasClass('discount'))
		{
			var i = $(this);
			i.css('background', 'none');
		}
	});
});

function getURLParam(name)
{
  name = name.replace(/[\[]/,"\\\[").replace(/[\]]/,"\\\]");
  var regexS = "[\\?&]"+name+"=([^&#]*)";
  var regex = new RegExp( regexS );
  var results = regex.exec( window.location.href );
  if( results == null )
    return "";
  else
    return results[1];
}

function nextHeadbanner()
{
	var i = $('.head-banner .selector SPAN.checked').next('SPAN.unchecked');
	if (i.size() == 0)
	{
		i = $('.head-banner .selector SPAN:eq(0)');
	}

	$('.head-banner .selector SPAN').removeClass('checked').addClass('unchecked');
	i.addClass('checked').removeClass('unchecked');

	//$('.head-banner .banner-content .visible, .head-banner .banner-content .hidden').fadeOut();
	//$('.head-banner .banner-content .visible, .head-banner .banner-content .hidden').slideUp();
	//$('.head-banner .banner-content .visible, .head-banner .banner-content .hidden').animate({'width': 'hide', 'margin-left': 'hide', 'padding-left': 'hide', 'margin-right': 'hide', 'padding-right': 'hide'});
	$('.head-banner .banner-content .visible, .head-banner .banner-content .hidden').not($('#'+i.attr('rel'))).animate({'margin-left': '-100%'}, 1000);
	//$('#'+i.attr('rel')).fadeIn();
	//$('#'+i.attr('rel')).slideDown();
	//$('#'+i.attr('rel')).animate({'width': 'show', 'margin-left': 'show', 'padding-left': 'show', 'margin-right': 'show', 'padding-right': 'show'});
	$('#'+i.attr('rel')).css({'display': 'block', 'margin-left': '100%', 'left': '0px'}).animate({'margin-left': '0%'}, 1000);

	clearInterval(bannerChangeTimeout);
	bannerChangeTimeout = setInterval(nextHeadbanner, 6000);

	return false;
}

function prevHeadbanner()
{
	var i = $('.head-banner .selector SPAN.checked').prev('SPAN.unchecked');
	if (i.size() == 0)
	{
		i = $('.head-banner .selector SPAN:eq('+($('.head-banner .selector SPAN').size()-1)+')');
	}

	$('.head-banner .selector SPAN').removeClass('checked').addClass('unchecked');
	i.addClass('checked').removeClass('unchecked');

	//$('.head-banner .banner-content .visible, .head-banner .banner-content .hidden').fadeOut();
	//$('.head-banner .banner-content .visible, .head-banner .banner-content .hidden').slideUp();
	//$('.head-banner .banner-content .visible, .head-banner .banner-content .hidden').animate({'width': 'hide', 'margin-left': 'hide', 'padding-left': 'hide', 'margin-right': 'hide', 'padding-right': 'hide'});
	$('.head-banner .banner-content .visible, .head-banner .banner-content .hidden').not($('#'+i.attr('rel'))).animate({'margin-left': '100%'}, 1000);
	//$('#'+i.attr('rel')).fadeIn();
	//$('#'+i.attr('rel')).slideDown();
	//$('#'+i.attr('rel')).animate({'width': 'show', 'margin-left': 'show', 'padding-left': 'show', 'margin-right': 'show', 'padding-right': 'show'});
	$('#'+i.attr('rel')).css({'display': 'block', 'margin-left': '-100%', 'left': '0px'}).animate({'margin-left': '0%'}, 1000);

	clearInterval(bannerChangeTimeout);
	bannerChangeTimeout = setInterval(nextHeadbanner, 6000);

	return false;
}

function updateTypesCount()
{
	$('#selection_types_count').html('<img src="/template/images/loader.gif" alt="Загрузка" />');

	var str = '';
	$('.selection #selection_types INPUT, .selection #selection_types SELECT').each(function(i, obj) {
		if ($(obj).val() != null)
		{
			str += $(obj).attr('name')+'='+encodeURIComponent($(obj).val())+'&';
		}
	});
	str += 'getcount=1&action=selection';

	var link = $('#selection_types_url').val();

	$.ajax({
		cache: false,
		data: str,
		dataType: 'json',
		type: 'get',
		url: link,
		success: function(data) {
			$('#selection_types_count').html(data.count);
		}
	});
}

function updateBrandsCount()
{
	$('#selection_brands_count').html('<img src="/template/images/loader.gif" alt="Загрузка" />');

	var str = '';
	$('.selection #selection_brands INPUT').each(function(i, obj) {
		if ($(obj).attr('checked'))
		{
			str += $(obj).attr('name')+'='+encodeURIComponent($(obj).val())+'&';
		}
	});
	str += 'getcount=1';

	var link = $('#selection_brands_url').val();

	$.ajax({
		cache: false,
		data: str,
		dataType: 'json',
		type: 'get',
		url: link,
		success: function(data) {
			$('#selection_brands_count').html(data.count);
		}
	});
}

function updateAutoCount()
{
	var id = 0;

	$('#selection_auto SELECT').each(function(i, o) {
		if (!($(o).attr('disabled')) && $(o).val() != '')
		{
			id = parseInt($(o).val());
		}
	});

	$('#selection_auto_count').html('<img src="/template/images/loader.gif" alt="Загрузка" />');

	$.ajax({
		cache: false,
		data: 'action=selectauto&id='+id+'&getcount=1',
		url: '/catalog/',
		type: 'get',
		dataType: 'json',
		success: function(data) {
			$('#selection_auto_count').html(data.count);
		}
	});
}

var bannerChangeTimeout;

$(document).ready(function() {
    $('#showAllBrends').click(function() {
        $('#showAllBrends').addClass('active');
        $('#showTopBrands').removeClass('active');
        $('#topBrends').hide();
        $('#allBrends').show();
        return false;
    });
    $('#showTopBrands').click(function() {
        $('#showAllBrends').removeClass('active');
        $('#showTopBrands').addClass('active');
        $('#allBrends').hide();
        $('#topBrends').show();
        return false;
    });
    
    $('DIV.vote A.my_vote').click(function() {
        var parent = $(this).parent();
        if (parent.find('form').is('form.vote-form')) return false;
        var url = $(this).attr('vote');
        var voteFormHtml = '<form action="' + url + '" method="post" enctype="multipart/form-data" class="vote-form">';
        voteFormHtml += '<a href="#" class="close"></a>';
        voteFormHtml += '<div class="desc">Оценивая работу продавцов-консультантов пожалуйста прокомментируйте Вашу оценку</div>';
        voteFormHtml += '<div class="data">';
        voteFormHtml += '<div class="field">';
        voteFormHtml += '<textarea name="phone" id="comment" style="width: 266px; height: 50px;">Ваш комментарий</textarea>';
        voteFormHtml += '</div>';
        voteFormHtml += '</div>';
        voteFormHtml += '<div class="sbmt">';
        voteFormHtml += '<input type="submit" name="s" value="Отправить" />';
        voteFormHtml += '</div>';
        voteFormHtml += '</form>'; 
        
        var result = '<div class="vote-form" style="width: 200px; top: -100px; left: -200px;">';
        result += '<a href="#" class="close"></a>';
        result += '<div class="desc">';
        result += 'Спасибо за Ваш отзыв!';
        result += '</div></div>';
        
        parent.append(voteFormHtml);
        var voteForm = parent.find('form.vote-form');
        voteForm.find('a.close').click(function() {
            $(this).parent().fadeOut(300, function(){
                $(this).parent().find('form.vote-form').remove(); 
            });
            return false;
        });
        voteForm.fadeIn();
        
        voteForm.find('#comment').focus(function() {
            if ($(this).val() == 'Ваш комментарий') {
                $(this).val('');
                $(this).css('color', '#000');
            }
        });
        voteForm.find('#comment').blur(function() {
            if ($(this).val() == '') {
                $(this).val('Ваш комментарий');
                $(this).css('color', '#7f7f7f');
            }
        });
        
        voteForm.find('input[type="submit"]').click(function() {
            var comment = voteForm.find('#comment').val();
            var err = false;

            if (comment == '' || comment == 'Ваш комментарий') {
                voteForm.find('#comment').css({'color': '#c91010'});
                err = true;
            }
            if (err) return false;
            
            voteForm.find('#comment').css({'color': '#000'});
            
            $.ajax({
                cache: false,
                type: 'post',
                url: url,
                data: {'comment' : comment},
                success: function() {
                    voteForm.fadeOut(200, function(){
                        $(this).parent().find('form.vote-form').remove(); 
                    });
                    parent.append(result);
                    var resDiv = parent.find('div.vote-form');
                    resDiv.fadeIn();
                    resDiv.find('a.close').click(function() {
                        $(this).parent().fadeOut(300, function(){
                            $(this).parent().find('div.vote-form').remove();
                        });
                        return false;
                    });
                    parent.find('a.my_vote').remove();
                    parent.find('p.label').remove();
                    parent.append('<p class="result">Ваш голос принят!</p>');
                }
            });
            return false;
        });
        return false;
    });
    
    //$('.head').each(function() {
		//var background = $(this).css('background-color');
		//var img = $(this).css('background-image');
		//$(this).css({'position': 'relative', 'zoom': 1});
		//PIE.attach(this);
		//$(this).css({'background-color': background+' !important', 'background-image': img+' !important'});
    //});

	/*$('.catalog-menu UL A').click(function() {
		$('.catalog-menu UL LI').not($(this).parent()).removeClass('active');
		$(this).parent().addClass('active');

		var id = $(this).attr('id').substr(11);

		$('.catalog').not('#maincat'+id).slideUp(300);
		$('#maincat'+id).slideDown(300);

		return false;
	});*/

	$('.our-pluses-menu A').click(function() {
		var id = $(this).attr('rel');
		$('.our-pluses-content').not('#'+id).slideUp();
		$('#'+id).slideDown();
		$('.our-pluses-menu A').not($(this)).parent().removeClass('active');
		$(this).parent().addClass('active');
		return false;
	});

	$('.brands-block H2 A').click(function() {
		$('.brands-open').slideToggle();
		return false;
	});

	$('.head-banner .selector SPAN').click(function() {
		$('.head-banner .selector SPAN').removeClass('checked').addClass('unchecked');
		$(this).removeClass('unchecked').addClass('checked');

		//$('.head-banner .banner-content .visible, .head-banner .banner-content .hidden').fadeOut();
		//$('.head-banner .banner-content .visible, .head-banner .banner-content .hidden').animate({'width': 'hide', 'margin-left': 'hide', 'padding-left': 'hide', 'margin-right': 'hide', 'padding-right': 'hide'});
		$('.head-banner .banner-content .visible, .head-banner .banner-content .hidden').not($('#'+$(this).attr('rel'))).animate({'margin-left': '-100%'}, 1000);
		//$('#'+$(this).attr('rel')).fadeIn();
		//$('#'+$(this).attr('rel')).animate({'width': 'show', 'margin-left': 'show', 'padding-left': 'show', 'margin-right': 'show', 'padding-right': 'show'});
		$('#'+$(this).attr('rel')).css({'display': 'block', 'margin-left': '100%', 'left': '0px'}).animate({'margin-left': '0%'}, 1000);

		clearInterval(bannerChangeTimeout);
		bannerChangeTimeout = setInterval(nextHeadbanner, 6000);

		return false;
	});

	$('.head-banner .arrow-left').click(prevHeadbanner);
	$('.head-banner .arrow-right').click(nextHeadbanner);

	bannerChangeTimeout = setInterval(nextHeadbanner, 3000);

	$('#autosel1').change(function() {
		if ($('#autosel1').size() > 0 && $('#autosel1').val() != '1')
		{
			//$('#selection_auto #autosel5').parent().hide();
			$('#selection_auto #autosel4').parent().find('LABEL').html('Модификация');
			$('#selection_auto #autosel4 option:eq(0)').html('Не выбрана');
		}
		else
		{
			//$('#selection_auto #autosel5').parent().show();
			$('#selection_auto #autosel4').parent().find('LABEL').html('Двигатель');
			$('#selection_auto #autosel4 option:eq(0)').html('Не выбран');
		}
	});

	if ($('#autosel1').size() > 0 && $('#autosel1').val() != '1')
	{
		//$('#selection_auto #autosel5').parent().hide();
		$('#selection_auto #autosel4').parent().find('LABEL').html('Модификация');
		$('#selection_auto #autosel4 option:eq(0)').html('Не выбрана');
	}
	else
	{
		//$('#selection_auto #autosel5').parent().show();
		$('#selection_auto #autosel4').parent().find('LABEL').html('Двигатель');
		$('#selection_auto #autosel4 option:eq(0)').html('Не выбран');
	}

	$('.selection .mode A').click(function() {
		var d = $(this).attr('rel');
		$('.selection-mode-block').not('#'+d).slideUp();
		$('#selection_auto .preselection').slideDown();
		$('#selection_auto .subselection').slideUp();
		//$('#selection_auto select option:nth-child(n+1)').remove();
		$('#selection_auto select').not('#autosel1').each(function(i, o) {
			$(o).find('option').not('option:eq(0)').remove();
		});
		//$('#selection_auto select option:eq(0)').html('Не выбрано');
		$('#selection_auto select').not($('#selection_auto select').first()).attr('disabled', true);
		$('#'+d).slideDown();
		$('.selection .mode LI').removeClass('active');
		$(this).parent().addClass('active');

		return false;
	});

	var auto_selection_link = '/catalog/';

	$('#selection_auto .preselection .selection-item').click(function() {
		var current_level = 1;
		var id = $(this).find('input[type="hidden"]').val();
		var next_level = current_level+1;

		if (id != '1')
		{
			//$('#selection_auto #autosel5').parent().hide();
			$('#selection_auto #autosel4').parent().find('LABEL').html('Модификация');
			$('#selection_auto #autosel4 option:eq(0)').html('Не выбрана');
		}
		else
		{
			//$('#selection_auto #autosel5').parent().show();
			$('#selection_auto #autosel4').parent().find('LABEL').html('Двигатель');
			$('#selection_auto #autosel4 option:eq(0)').html('Не выбран');
		}


		$('#autosel1').val(id);

		$('#selection_auto .preselection').slideUp();
		$('#selection_auto .subselection').slideDown();

		$.ajax({
			cache: false,
			url: '/autodirectory/',
			type: 'GET',
			data: 'id='+id,
			dataType: 'json',
			success: function(data) {
				var el = $('#autosel'+next_level);
				var ops = '';
				var ops_count = 0;
				var ar = [];
				for (var i in data)
				{
					ar.push([i, data[i]]);
				}
				ar.sort(function(a, b) {
					if (a[1] == b[1]) { return 0; }
					var arr = [a[1], b[1]];
					arr.sort();
					if (arr[0] == a[1]) { return -1; }
					else { return 1; }
				});
				data = ar;

				for (var i in data)
				{
					ops += '<option value="'+data[i][0]+'">'+data[i][1]+'</option>';
					++ops_count;
				}

				ops = '<option value="">'+el.find('OPTION:eq(0)').text()+'</option>'+ops;

				el.html(ops);

				//document.getElementById('autosel'+next_level).options.sort(function(a, b) { if (a == b) { return 0; } var ar = [a, b]; ar.sort(); if (ar[0] == a) { return -1; } else { return 1; } });

				if (ops_count > 0)
				{
					el.attr('disabled', false);
				}
				else
				{
					el.attr('disabled', true);
				}

				updateAutoCount();
			}
		});
	});

	$('#selection_auto SELECT').change(function() {
		var current_level = $(this).attr('id').substr(7);
		var id = $(this).val();

		$('#selection_auto SELECT').each(function(i, o) {
			$(o).css('color', '');
			var sel_level = $(o).attr('id').substr(7);
			if (sel_level > current_level)
			{
				var ops = '<option value="">'+$(o).find('OPTION:eq(0)').text()+'</option>';
				$(o).html(ops);
				$(o).attr('disabled', true);
			}
		});

		id = parseInt(id);
		current_level = parseInt(current_level);

		if (id == 0 || isNaN(id))
		{
			updateAutoCount(); return false;
		}

		if (isNaN(current_level)) { updateAutoCount(); return false; }

		if (isNaN(id)) { id = ''; }

		var next_level = current_level+1;

		$.ajax({
			cache: false,
			url: '/autodirectory/',
			type: 'GET',
			data: 'id='+id,
			dataType: 'json',
			success: function(data) {
				var el = $('#autosel'+next_level);
				var ops = '';
				var ops_count = 0;
				var ar = [];
				for (var i in data)
				{
					ar.push([i, data[i]]);
				}
				ar.sort(function(a, b) {
					if (a[1] == b[1]) { return 0; }
					var arr = [a[1], b[1]];
					arr.sort();
					if (arr[0] == a[1]) { return -1; }
					else { return 1; }
				});
				data = ar;
				for (var i in data)
				{
					ops += '<option value="'+data[i][0]+'">'+data[i][1]+'</option>';
					++ops_count;
				}

				ops = '<option value="">'+el.find('OPTION:eq(0)').text()+'</option>'+ops;

				el.html(ops);

				if (ops_count > 0)
				{
					el.attr('disabled', false);
				}
				else
				{
					el.attr('disabled', true);
				}

				updateAutoCount();
			}
		});
	});

	$('.selection #selection_types INPUT, .selection #selection_types SELECT').change(updateTypesCount);
	$('.selection #selection_brands INPUT').change(updateBrandsCount);

	$('#selection_auto_submit').click(function() {
		var id = 0;

		$('#selection_auto SELECT').each(function(i, o) {
			id2 = parseInt($(o).val());
			if (id2 == 0 || isNaN(id2))
			{
				if (!($(o).attr('disabled')))
				{
					$(o).css('color', '#B02D11');
				}
			}
			else
			{
				$(o).css('color', '');
			}
		});

		$('#selection_auto SELECT').each(function(i, o) {
			if ($(o).parents('.field').css('display') != 'none' && $(o).find('option').size() > 1)
			{
				//if (!($(o).attr('disabled')) && $(o).val() != '')
				{
					id = parseInt($(o).val());
					if (id == 0 || isNaN(id))
					{
						$(o).css('color', '#B02D11');
					}
					else
					{
						$(o).css('color', '');
					}
				}
			}
		});

		if (isNaN(id) || id == 0) { return false; }
		else
		{
			
		}

		//if (id == 0) { return false; }

		window.location.href = '/catalog/?action=selectauto&id='+id;
	});

	$('#selection_types_submit').click(function() {
		var str = '';
		$('.selection #selection_types INPUT, .selection #selection_types SELECT').each(function(i, obj) {
			if ($(obj).val() != null)
			{
				str += $(obj).attr('name')+'='+encodeURIComponent($(obj).val())+'&';
			}
		});
		str += 'action=selection';

		var link = $('#selection_types_url').val();

		window.location.href = link+'?'+str;
	});

	$('#selection_brands_submit').click(function() {
		var str = '';
		$('.selection #selection_brands INPUT').each(function(i, obj) {
			if ($(obj).attr('checked'))
			{
				str += $(obj).attr('name')+'='+encodeURIComponent($(obj).val())+'&';
			}
		});

		var link = $('#selection_brands_url').val();

		window.location.href = link+str;
	});

	updateAutoCount();
	updateTypesCount();
	updateBrandsCount();

	$('.city .dropdown').click(function(e) {
		$('.city .city-list').css({'width': ($('.city .select').width()+9)+'px'});
		//$('.city-list').slideToggle();
		$('.city .city-list').show();
		e.stopPropagation();
	});

	$('.stores-city-selector .dropdown').click(function(e) {
		var w = $('.stores-city-selector .select').width();
		var w1 = $('.stores-city-selector .city-list').width();
		if (w1 < w)
		{
			$('.stores-city-selector .city-list').css({'width': ($('.stores-city-selector .select').width()+9)+'px'});
		}
		//$('.stores-city-selector .select').css({'width': ($('.stores-city-selector .city-list').width()+9)+'px'});
		//$('.city-list').slideToggle();
		$('.stores-city-selector .city-list').show();
		e.stopPropagation();
	});

	$(document).click(function() {
		//$('.city-list').slideUp();
		$('.city-list').hide();
	});

	$('.cart-block .dropdown, .cart-block .open-cart-link A').click(function() {
		if ($('.cart-list UL LI').size() <= 1) { return false; }
		$('.cart-block .cart-opened').not('.footer .cart-block .cart-opened').toggle('fast');
		$('.cart-block .select').animate({opacity: 0});//fadeOut();
		return false;
	});
	$('.cart-block .cart-opened .close').click(function() {
		$('.cart-block .cart-opened').not('.footer .cart-block .cart-opened').toggle('fast');
		$('.cart-block .select').animate({opacity: 1});//fadeIn();
		return false;
	});

	$('.cart-list UL').css('width', (($('.cart-list UL LI').size()-1)*62-10)+'px');
	$('.cart-list').jScrollPane({showArrows:true, arrowSize: 1, autoReinitialise: true, maintainPosition: true, autoReinitialiseDelay: 500});

	/*if ($('.cart-list UL LI').size() <= 1)
	{
		$('.cart-block .order-button').addClass('disabled');
	}*/

	$('.order-list .ordered').click(function() {
		var item_id = $(this).attr('id').substr(11);
		var tr = $(this).parent().parent();
		var mode = 'disable';
		if (tr.hasClass('not-ordered')) { mode = 'enable'; }

		$.ajax({
			cache: false,
			url: '?action=disable_or_enable&id='+item_id+'&mode='+mode,
			success: function() {
				if (mode == 'enable')
				{
					tr.removeClass('not-ordered');
					tr.find('input[name="order_it"]').attr('checked', true);
				}
				else
				{
					tr.addClass('not-ordered');
					tr.find('input[name="order_it"]').attr('checked', false);
				}
				recountCart();
			}
		});
	});

	var deleteCartItem = function(e) {
		e.stopPropagation();
		var id = $(this).attr('rel').substr(5);
		if (isNaN(id))
		{
			alert('Incorrect id passed');
			return false;
		}
		else
		{
			var str = 'action=delete&id='+id;
			$.ajax({
				url: '/cart/',
				data: str,
				cache: false,
				type: 'GET',
				dataType: 'json',
				success: function(data) {
					$('.cart_total_cost').html(data.cost);
					$('.cart_total_cost_head').html(data.cost);
					$('.cart_cost_word').html(data.value_word);
					$('.cart-block .select .title .price').html(data.cost+' руб.');
					$('.cart-block .cart-opened .title .price').html(data.cost+' руб.');
					$('.cart-block .select .count').html(data.count + ' ' + data.word);
					$('.cart_item_'+id+' *').not('TD, TR, TABLE').slideUp(300, function() {
						$('.cart_item_'+id).css('overflow', 'hidden').animate({'width': '1px'}, {duration: 300})
							.animate({'height': '1px'}, {duration: 300, complete: function() {
									$('.cart_item_'+id).remove();
									if ($('.cart-list UL LI').size() <= 1)
									{
										$('.cart-block .select .title .price').html('пуст');
										$('.cart-block .cart-opened .title .price').html('пуст');
										$('.cart-block .cart-opened').not('.footer .cart-block .cart-opened').hide('fast');
										$('.cart-block .select').animate({opacity: 1});//fadeIn();

										if ($('.order-list').size() > 0)
										{
											window.location.reload();
										}
									}
							} });
					});
					var btn = $('.tocart A[rel="item_'+id+'"]').parent().parent();
					var cont = btn.parent();

					btn.fadeOut(300, function() {
						btn.replaceWith('<div class="buy" style="display: none;"><div class="button"><div class="plus"><a href="#" rel="item_'+id+'">Купить</a><div class="clear"></div></div></div></div>');
						cont.find('.buy A').click(addCartItem);
						cont.find('.buy').fadeIn();
					});
					
					if ($('#deliver_to_address').size() > 0)
					{
						if ($('#deliver_to_address').attr('checked'))
						{
							var total_cost = $('.total-cost .value').text();
							var deliv_cost = parseInt($('#self_deliv_discount').val());
							$('button[type="submit"] .cart_total_cost').html((total_cost));
						}
						else
						{
							var total_cost = $('.total-cost .value').text();
							var deliv_cost = parseInt($('#self_deliv_discount').val());
							$('button[type="submit"] .cart_total_cost').html((parseFloat(total_cost.replace(' ', '').replace(',', '.'))-deliv_cost).toString().replace('.', ','));
						}
					}
				}
			});

			return false;
		}
	};
	
	var addCartItem = function(e) {
		e.stopPropagation();
		var id = $(this).attr('rel').substr(5);
		var link = $(this);
		
		if (isNaN(id))
		{
			alert('Incorrect id passed');
			return false;
		}
		else
		{
			var str = 'action=add&id='+id;
			$.ajax({
				url: '/cart/',
				data: str,
				dataType: 'json',
				cache: false,
				type: 'GET',
				success: function(data) {
					//console.log(data);
					$('.cart_total_cost').html(data.cost);
					$('.cart_total_cost_head').html(data.cost);
					$('.cart_cost_word').html(data.value_word);
					$('.cart-block .select .title .price').html(data.cost+' руб.');
					$('.cart-block .cart-opened .title .price').html(data.cost+' руб.');
					$('.cart-block .select .count').html(data.count + ' ' + data.word);
					$('.cart-list').data('jsp').getContentPane().html(data.items);
					$('.cart-list UL').css('width', (($('.cart-list UL LI').size()-1)*62-10)+'px');
					$('.cart-list .del-from-cart').click(deleteCartItem);

					var btn = link.parent().parent().parent();
					var cont = btn.parent();

					var offset = btn.offset();

					var title = '';
					var item_link = '';
					title = btn.parents('.item').find('h3').text();
					item_link = btn.parents('.item').find('h3').find('a').attr('href');
					if (title == '')
					{
						title = btn.parents('tr').find('h2').text();
						item_link = btn.parents('tr').find('h2').find('a').attr('href');
					}
					if (title == '')
					{
						title = $('.card').find('h1').text();
						item_link = '#';
					}

					btn.fadeOut(300, function() {
						btn.replaceWith('<div class="tocart" style="display: none;"><div class="button"><a href="/cart/" rel="item_'+id+'">Оформить</a></div></div>');
						cont.find('.tocart').fadeIn();
					});

					$('body').append('<div class="overlay" style="display: none; background: #000; position: absolute; left: '+offset.left+'px; top: '+offset.top+'px; width: 0px; height: 0px; z-index: 100500;"></div>');
					$('.overlay').css({'opacity': '0.3', 'left': '0px', 'top': '0px', 'width': '100%', 'height': $(document).height()+'px'});
					//$('.overlay').hide();

					$('.overlay').fadeIn(200, function() {
						//$('.overlay').animate({'left': '0px', 'top': '0px', 'width': '100%', 'height': $(document).height()+'px'}, { duration: 300 });

						$('body').append('<div class="ordered-window" style="left: '+(offset.left)+'px; top: '+(offset.top)+'px; z-index: 100501;"></div>');
						$('.ordered-window').append('<a href="#" class="close"></a>');
						$('.ordered-window').append('<div class="title"><a href="'+item_link+'">'+title+'</a></div>');
						$('.ordered-window').append('<div class="added">Добавлен в заказ</div>');
						$('.ordered-window').append('<div class="tocart"><div class="button"><a href="/cart/">Оформить</a></div></div>');
						$('.ordered-window').append('<div class="continue"><a href="#" class="close-ordered-window">Продолжить покупки</a></div>');

						$('.ordered-window').fadeIn(300);
						$('.ordered-window').animate({'left': (offset.left-75)+'px', 'top': (offset.top-30)+'px', 'width': '225px', 'height': '85px'}, { duration: 300});

						//$('.ordered-window a:not(.title a, .tocart a), .ordered-window a[href="#"]').click(function() {
						$('.ordered-window a').not('.title a, .tocart a').add('.ordered-window a[href="#"]').click(function() {
							$('.overlay').fadeOut(300, function() { $('.overlay').remove(); });
							$('.ordered-window').fadeOut(300, function() { $('.ordered-window').remove(); });
							return false;
						});
					});
				}
			});
			//$(this).parent().parent().parent().html('<span style="color: #000;">В корзине</span>');
			return false;
		}
	};

	var emptyCart = function() {
		var str = 'action=empty';
		$.ajax({
			url: '/cart/',
			data: str,
			cache: false,
			type: 'GET',
			success: function(data) {
				//console.log(data);
				$('.cart_item, .cart-block UL LI:not(.clear)').css('overflow', 'hidden').animate({'width': '1px'}, {duration: 300})
						.animate({'height': '1px'}, {duration: 300, complete: function() {
								$(this).remove();
						} });
				$('.cart_total_cost').html('0');
				$('.cart_total_cost_head').html('0');
				$('.cart_cost_word').html('рублей');
				$('.cart-block .select .title .price').html('пуст');
				$('.cart-block .cart-opened .title .price').html('пуст');
				$('.cart-block .cart-opened').not('.footer .cart-block .cart-opened').hide('fast');
				$('.cart-block .count').html('');
				$('.cart-block .select').animate({opacity: 1});//fadeIn();

				if ($('.order-list').size() > 0)
				{
					window.location.reload();
				}
				
				$('.tocart').each(function(i, o) {
					var id = $(o).find('a').attr('rel').substr(5);
					var btn = $(o);
					var cont = $(o).parent();

					btn.fadeOut(300, function() {
						btn.replaceWith('<div class="buy" style="display: none;"><div class="button"><div class="plus"><a href="#" rel="item_'+id+'">Купить</a><div class="clear"></div></div></div></div>');
						cont.find('.buy A').click(addCartItem);
						cont.find('.buy').fadeIn();
					});
				});
			}
		});
		return false;
	};

	var recountCart = function() {
		var str = '';
		$('.cart_count').each(function(i, o) {
			str += $(o).attr('name')+'='+$(o).val()+'&';
		});

		$.ajax({
			url: '/cart/?action=recount',
			data: str,
			cache: false,
			type: 'POST',
			dataType: 'json',
			success: function(data) {
				$('.cart_total_cost').html(data.cost);
				$('.cart_total_cost_head').html(data.cost);
				$('.cart_cost_word').html(data.value_word);
				$('.cart-block .select .title .price').html(data.cost+' руб.');
				$('.cart-block .count').html(data.count + ' ' + data.word)
				$('.cart-block .cart-opened .title .price').html(data.cost+' руб.');
				
				if ($('#deliver_to_address').size() > 0)
				{
					if ($('#deliver_to_address').attr('checked'))
					{
						var total_cost = $('.total-cost .value').text();
						var deliv_cost = parseInt($('#self_deliv_discount').val());
						$('button[type="submit"] .cart_total_cost').html((total_cost));
					}
					else
					{
						var total_cost = $('.total-cost .value').text();
						var deliv_cost = parseInt($('#self_deliv_discount').val());
						$('button[type="submit"] .cart_total_cost').html((parseInt(total_cost.replace(' ', ''))-deliv_cost));
					}
				}
			}
		});
	};

	$('.buy').click(function() { $(this).find('A').click(); });
	$('.buy A').click(addCartItem);
	$('.del').click(function() { $(this).find('A').click(); });
	$('.del-from-cart, .del A').click(deleteCartItem);
	$('.empty-cart').click(emptyCart);
	$('.cart_count').keyup(recountCart);

	var act = getURLParam('action');
	var brand = getURLParam('brand');

	if (act == 'selection')
	{
		var d = 'selection_types';
		$('.selection-mode-block').not('#'+d).slideUp();
		$('#'+d).slideDown();
		$('.selection .mode LI').removeClass('active');
		$('A[rel="'+d+'"]').parent().addClass('active');
	}



	// ------------ Stores JS -----------------

	$('.stores-head .mode A').click(function(e) {
		e.preventDefault();
		if (this.rel == 'stores-list')
		{
			$('.stores-map-section').slideUp();
			$('.stores-list').slideDown();
		}
		else
		{
			$('.store-map').fadeOut();
			$('.stores-map-section').css({'display': 'none', 'overflow' : 'auto', 'height': 'auto'});
			$('.stores-list').slideUp();
			$('.stores-map-section').slideDown();
		}

		$('.stores-head .mode LI').removeClass('active');
		$(this).parent().addClass('active');

	});

	/*if (window.location.pathname.substr(0, 6) == '/Shops' && !(/subcity/.test(window.location.search)) && !(/\d\.php/.test(window.location.href)))
	{
		$('.stores-head .mode LI').removeClass('active');
		$('.stores-head .mode LI A[rel="stores-map-section"]').parent().addClass('active');
		$('.store-map').fadeOut();
		$('.stores-map-section').css({'display': 'none', 'overflow' : 'auto', 'height': 'auto'});
		$('.stores-list').hide();
		$('.stores-map-section').show();
	}*/

	$('.stores-list .imgs-menu A').click(function() {
		$(this).parent().parent().find('div').not('.imgs-menu').not($('.stores-list .img .'+$(this).attr('rel'))).slideUp();
		$(this).parent().parent().find('.'+$(this).attr('rel')).slideDown();
		$(this).parent().find('A').removeClass('active');
		$(this).addClass('active');
		return false;
	});

	$('.stores-list .img .facade-img A, .stores-list .img .internal-img A').fancybox();

	$('.stores-list .show-map A').click(function() {
		$('.store-map').css({'display': 'none', 'height': 'auto', 'visibility': 'visible'});
		$(this).parent().append($('.store-map'));
		var off = $(this).parent().offset();
		if (off.left < $('.store-map').width()+20)
		{
			$('.store-map').css({'right': 'auto', 'left': '0px'});
		}
		else
		{
			$('.store-map').css({'left': 'auto', 'right': '37px'})
		}

		if ($('.content').height() < ($(this).parent().offset().top - $('.content').offset().top) + $('.store-map').height())
		{
			var t = ($('.content').height() - (($(this).parent().offset().top - $('.content').offset().top) + $('.store-map').height()));
			$('.store-map').css({'top' : t+'px', 'bottom' : 'auto'});
		}
		else
		{
			$('.store-map').css({'top' : '5px', 'bottom' : 'auto'});
		}

		$('.store-map .title').html($(this).parent().parent().find('.title').not('.store-map .title').html());
		$('.store-map .city-area').html($(this).parent().parent().find('.city-area').not('.store-map .city-area').html());
		$('.store-map .phones').html($(this).parent().parent().next().find('.phones').not('.store-map .phones').html());
		$('.store-map .open-time-block').html($(this).parent().parent().next().find('.open-time-block').not('.store-map .open-time-block').html());

		var lat = $(this).parent().parent().find('input[name="lat[]"]').val();
		var lng = $(this).parent().parent().find('input[name="lng[]"]').val();

		$('.store-map').fadeIn(function() {
			google.maps.event.trigger(map, 'resize');
			var center = new google.maps.LatLng(lat, lng);
			map.setZoom(16);
			map.panTo(center);
		});

		var center = new google.maps.LatLng(lat, lng);
		map.setZoom(16);
		map.panTo(center);

		return false;
	});

	$('.store-map .close').click(function() {
		$('.store-map').fadeOut();
		return false;
	});

	$('.store-search input[type="submit"]').click(function() {
		var input_addr = $('.store-search input[name="street"]').not('.header .store-search input[name="street"]').val();
		if (input_addr == '' || input_addr == 'Укажите улицу')
		{
			$('.stores-list-map LI').removeClass('active').removeClass('inactive')
			return false;
		}
		var search_string = $('.stores-list-map input[name="city_title[]"]').val();
		search_string += ', '+input_addr;

		$('.store-map').fadeOut();
		if ($('.stores-map-section').css('height') == '0px')
		{
			$('.stores-map-section').css({'display': 'none', 'overflow' : 'auto', 'height': 'auto'});
		}
		$('.stores-list').slideUp();
		$('.stores-map-section').slideDown();

		$('.stores-head .mode LI').removeClass('active');
		$('.stores-head .mode LI A[rel="stores-map-section"]').parent().addClass('active');

		var geocoder = new google.maps.Geocoder();
		geocoder.geocode({address: search_string}, function(result) {
			//console.log(result);
			if (typeof(result[0]) != 'undefined')
			{
				$('.stores-list-map LI').removeClass('active').addClass('inactive');
				var show_lat = 0;
				var show_lng = 0;
				var hypo = 0;
				var item;
				var found = 0;

				$('.stores-list-map LI').each(function(i, o) {
					var c_lat = $(o).find('input[name="lat[]"]').val();
					var c_lng = $(o).find('input[name="lng[]"]').val();
					var sq1 = 0;
					var sq2 = 0;

					if (c_lat > result[0].geometry.location.lat())
					{
						sq1 = (c_lat - result[0].geometry.location.lat());
					}
					else
					{
						sq1 = (result[0].geometry.location.lat() - c_lat);
					}
					sq1 = sq1*sq1;

					if (c_lng > result[0].geometry.location.lng())
					{
						sq2 = (c_lng - result[0].geometry.location.lng());
					}
					else
					{
						sq2 = (result[0].geometry.location.lng() - c_lng);
					}
					sq2 = sq2*sq2;

					var c_hypo = Math.sqrt(sq1+sq2);
					if (hypo == 0 || c_hypo < hypo)
					{
						hypo = c_hypo;
						show_lat = c_lat;
						show_lng = c_lng;
						item = $(o);
						++found;
					}
				});

				if (found > 0)
				{
					$(item).removeClass('inactive').addClass('active');
					map_large.setZoom(16);
					map_large.panTo(new google.maps.LatLng(show_lat, show_lng));
				}
			}
		});

		return false;
	});

	$('.stores-list-map LI').click(function() {
		$('.stores-list-map LI').removeClass('active').removeClass('inactive');
		var c_lat = $(this).find('input[name="lat[]"]').val();
		var c_lng = $(this).find('input[name="lng[]"]').val();
		map_large.setZoom(16);
		map_large.panTo(new google.maps.LatLng(c_lat, c_lng));
		$(this).addClass('active');
	});

	$('.store-search input[name="street"]').focus(function() {
		if ($(this).val() == 'Укажите улицу')
		{
			$(this).val('');
			$(this).css({'color' : '#000'});
		}
	});
	$('.store-search input[name="street"]').blur(function() {
		if ($(this).val() == '')
		{
			$(this).val('Укажите улицу');
			$(this).css({'color' : '#999'});
		}
	});

	var footer_menu_eq = 2;
	var total_footer_menu = $('.footer-menu>LI').size();
	if (total_footer_menu < 4) { footer_menu_eq = tota_footer_menu - 2; }
	if (total_footer_menu >= 0)
	{
		$('.footer-menu>LI:eq('+footer_menu_eq+')').append($('.footer .find-shop-form'));
	}

	$('.find-shop-form input[name="street"]').focus(function() {
		if ($(this).val() == 'Укажите адрес')
		{
			$(this).val('');
			$(this).css({'color' : '#000'});
		}
	});
	$('.find-shop-form input[name="street"]').blur(function() {
		if ($(this).val() == '')
		{
			$(this).val('Укажите адрес');
			$(this).css({'color' : '#AFAFAF'});
		}
	});

	if ($('.store-search input[name="street"]').not('.header .store-search input[name="street"]').val() == '' || $('.store-search input[name="street"]').not('.header .store-search input[name="street"]').val() == 'Укажите улицу')
	{
		$('.store-search input[name="street"]').not('.header .store-search input[name="street"]').css({'color' : '#999'});
	}
	else
	{
		if (typeof($('.store-search input[name="street"]').not('.header .store-search input[name="street"]').val()) != 'undefined')
		{
			$('.store-map').fadeOut();
			if ($('.stores-map-section').css('height') == '0px')
			{
				$('.stores-map-section').css({'display': 'block', 'overflow' : 'auto', 'height': 'auto'});
			}
			$('.stores-list').hide();
			$('.stores-map-section').show();

			$('.stores-head .mode LI').removeClass('active');
			$('.stores-head .mode LI A[rel="stores-map-section"]').parent().addClass('active');
			$('.store-search input[name="street"]').not('.header .store-search input[name="street"]').css({'color' : '#000'});
			$('.store-search input[type="submit"]').click();
		}
	}

	$('.header .find>A').click(function() {
		$('.header .find-store').fadeIn();
		return false;
	});
	$('.header .find .close').click(function() {
		$('.header .find-store').fadeOut();
		return false;
	});

	$('.card .head .images A').click(function() {
		var id = $(this).attr('rel').substr(6);
		var new_path = '/data/catalogue/large/'+id+'.jpg';
		$('.card .head .img IMG').attr('src', new_path);

		$('.card .head .images LI').removeClass('active');
		$(this).parent().addClass('active');

		return false;
	});

	$('.card .desc-link').click(function() {
		$(this).parents('LI').find('.type-desc').fadeIn();
		return false;
	});
	$('.card .type-desc .close').click(function() {
		$(this).parent().fadeOut();
		return false;
	});

	$('.callme>A').click(function() {
		$('.callme form.callback-form').fadeIn();
		return false;
	});
	$('.callme .callback-form .close').click(function() {
		$('.callme .callback-form').fadeOut();
		return false;
	});
	
	$('#callback_name').focus(function() {
		if ($(this).val() == 'Как вас зовут?')
		{
			$(this).val('');
			$(this).css('color', '#000');
		}
	});
	$('#callback_name').blur(function() {
		if ($(this).val() == '')
		{
			$(this).val('Как вас зовут?');
			$(this).css('color', '#7f7f7f');
		}
	});

	$('#callback_phone').focus(function() {
		if ($(this).val() == 'Телефон')
		{
			$(this).val('');
			$(this).css('color', '#000');
		}
	});
	$('#callback_phone').blur(function() {
		if ($(this).val() == '')
		{
			$(this).val('Телефон');
			$(this).css('color', '#7f7f7f');
		}
	});

	$('.callme input[type="submit"]').click(function() {
		var name = $('#callback_name').val();
		var phone = $('#callback_phone').val();
		var err = false;

		if (name == '' || name == 'Как вас зовут?')
		{
			$('#callback_name').css({'color': '#c91010'});
			err = true;
		}

		if (phone == '' || phone == 'Телефон')
		{
			$('#callback_phone').css({'color': '#c91010'});
			err = true;
		}

		if (err) { return false; }
		
		$('#callback_name').css({'color': '#000'});
		$('#callback_phone').css({'color': '#000'});

		$.ajax({
			cache: false,
			type: 'post',
			url: '/callback/',
			data: $('.callme form').serialize(),
			success: function(data) {
				if (data != 'ok')
				{
					alert(data);
					return true;
				}
				$('form.callback-form').fadeOut();
				$('div.callback-form').fadeIn();
			}
		});

		return false;
	});

	$('.send-letter-to-director').click(function() {
		var l = $('.director-letter');
		$('body').append('<div class="overlay" style="display: none; background: #000; position: absolute; left: 0px; top: 0px; width: 0px; height: 0px; z-index: 100500;"></div>');
		$('.overlay').css({'opacity': '0.3', 'left': '0px', 'top': '0px', 'width': '100%', 'height': $(document).height()+'px'});
		l.css({'margin-left': parseInt(($('body').width()-500)/2)+'px', 'top': parseInt($('.send-letter-to-director').offset().top-l.height()/2)+'px' });
		$('.overlay').fadeIn();
		l.fadeIn();
		return false;
	});

	$('.open-feedback').click(function() {
		var l = $('.feedback-form');
		$('body').append('<div class="overlay" style="display: none; background: #000; position: absolute; left: 0px; top: 0px; width: 0px; height: 0px; z-index: 100500;"></div>');
		$('.overlay').css({'opacity': '0.3', 'left': '0px', 'top': '0px', 'width': '100%', 'height': $(document).height()+'px'});
		l.css({'margin-left': parseInt(($('body').width()-500)/2)+'px', 'top': parseInt($(this).offset().top-l.height()/2)+'px' });

		var addr = $(this).attr('addr');
		if (addr != '' && typeof(addr) != 'undefined')
		{
			$('#feedback_addr').val(addr);
			$('label[for="feedback_addr"]').html('Ваше сообщение получит '+document.getElementById('feedback_addr').options[document.getElementById('feedback_addr').selectedIndex].text).show();
		}
		else
		{
			document.getElementById('feedback_addr').selectedIndex = 0;
			$('label[for="feedback_addr"]').hide();
		}

		$('.overlay').fadeIn();
		l.fadeIn();
		return false;
	});

	$('.director-letter INPUT[type="submit"]').click(function() {

		$('#err_director_name').html('');
		$('#err_director_phone').html('');
		$('#err_director_xxx').html('');

		var name = $('#director_name').val();
		var phone = $('#director_phone').val();
		var msg = $('#director_xxx').val();

		var err = false;

		if (name == '')
		{
			$('#err_director_name').html('Укажите свое имя');
			err = true;
		}
		if (phone == '')
		{
			$('#err_director_phone').html('Укажите телефон или электронную почту');
			err = true;
		}
		if (msg == '')
		{
			$('#err_director_xxx').html('Введите текст сообщения');
			err = true;
		}

		if (err)
		{
			return false;
		}

		$.ajax({
			cache: false,
			type: 'post',
			url: '/feedback/',
			data: $('.director-letter FORM').serialize(),
			success: function() {
				$('#err_director_name').html('');
				$('#err_director_phone').html('');
				$('#err_director_xxx').html('');
				$('.director-letter').fadeOut();
				$('.overlay').fadeOut(300, function() { $('.overlay').remove(); });
			}
		});
		return false;
	});

	$('.feedback-form INPUT[type="submit"]').click(function() {

		$('#err_feedback_name').html('');
		$('#err_feedback_phone').html('');
		$('#err_feedback_xxx').html('');

		var name = $('#feedback_name').val();
		var phone = $('#feedback_phone').val();
		var msg = $('#feedback_xxx').val();

		var err = false;

		if (name == '')
		{
			$('#err_feedback_name').html('Укажите свое имя');
			err = true;
		}
		if (phone == '')
		{
			$('#err_feedback_phone').html('Укажите телефон или электронную почту');
			err = true;
		}
		if (msg == '')
		{
			$('#err_feedback_xxx').html('Введите текст сообщения');
			err = true;
		}

		if (err)
		{
			return false;
		}

		/*$.ajax({
			cache: false,
			type: 'post',
			url: '/feedback/',
			data: $('.feedback-form FORM').serialize(),
			success: function() {
				$('#err_feedback_name').html('');
				$('#err_feedback_phone').html('');
				$('#err_feedback_xxx').html('');
				$('.feedback-form').fadeOut();
				$('.overlay').fadeOut(300, function() { $('.overlay').remove(); });
			}
		});*/

		$('.feedback-form form').ajaxSubmit({
			url: '/feedback/',
			cache: false,
			success: function(d) {
				$('#err_feedback_name').html('');
				$('#err_feedback_phone').html('');
				$('#err_feedback_xxx').html('');
				$('.feedback-form').fadeOut();
				$('.overlay').fadeOut(300, function() { $('.overlay').remove(); });
			}
		});
		return false;
	});

	$('.director-letter .close').click(function() {
		$('.director-letter').fadeOut();
		$('.overlay').fadeOut(300, function() { $('.overlay').remove(); });
		return false;
	});

	$('.feedback-form .close').click(function() {
		$('.feedback-form').fadeOut();
		$('.overlay').fadeOut(300, function() { $('.overlay').remove(); });
		return false;
	});
	
	$('.offline-price A').click(function(e) {
		e.preventDefault();
		offset = $(this).parent().offset();
		$('body').append('<div class="overlay" style="display: none; background: #000; position: absolute; left: '+offset.left+'px; top: '+offset.top+'px; width: 0px; height: 0px; z-index: 100500;"></div>');
		$('.overlay').css({'opacity': '0.3', 'left': '0px', 'top': '0px', 'width': '100%', 'height': $(document).height()+'px'});
		//$('.overlay').hide();

		$('.overlay').fadeIn(200, function() {
			//$('.overlay').animate({'left': '0px', 'top': '0px', 'width': '100%', 'height': $(document).height()+'px'}, { duration: 300 });

			$('body').append('<div class="ordered-window" style="left: '+(offset.left)+'px; top: '+(offset.top)+'px; z-index: 100501;"></div>');
			$('.ordered-window').append('<a href="#" class="close"></a>');
			$('.ordered-window').append('<div class="title" style="color: #01537a;">Цена в розничных магазинах</div>');
			$('.ordered-window').append('<p>Цена в интернет-магазине всегда ниже, чем в розничных магазинах</p>');

			$('.ordered-window').fadeIn(300);
			$('.ordered-window').animate({'left': (offset.left-100)+'px', 'top': (offset.top-30)+'px', 'width': '225px', 'height': '85px'}, { duration: 300});

			//$('.ordered-window a:not(.title a, .tocart a), .ordered-window a[href="#"]').click(function() {
			$('.ordered-window .close').click(function() {
				$('.overlay').fadeOut(300, function() { $('.overlay').remove(); });
				$('.ordered-window').fadeOut(300, function() { $('.ordered-window').remove(); });
				return false;
			});
		});
	});

	$('A.fancy').fancybox();

});

