$(document).ready(function() {
	//xajax_show_region();

    //поиск с подсказками
    $('#seach_query').keyup(function(event) {
        var key;    
        var search_query = this.value;

        if(window.event) key = window.event.keyCode;
        else if (event) key = event.which;
        
        if(key == 27) {
            $('#search_results').hide('fast');
        } else if (key == 13/* && searchResElemHref.length > 0 && $('#search_results .result_str .result_value_selected').length > 0*/) {
            $('#container > form').submit(function() {
                return false;
            });
            searchResElemHref.trigger('click');
        } else if(this.value.length >= 2 && (key !== 38 & key !== 40)) {
            $.getJSON('http://www.shop-stroitel.ru/modules/ajax.search.php?q=' + this.value + '&callback=?', function(data){
                    var search_result = '';

                    $.each(data, function(k, v) {
                        if(k == 'error') {
                            search_result += '<div class="result_str">';
                            search_result += '<div class="result_type">ошибка</div>';
                            search_result += '<div class="result_value">' + v + '</div>';
                            search_result += '</div>';
                        }
                        else if(k == 'groups') {
                            var groups = false;
                            $.each(v, function(kg, vg) {
                                search_result += '<div class="result_str">';
                                if(!groups)
                                    search_result += '<div class="result_type">группы</div>';
                                else
                                    search_result += '<div class="result_type"></div>';
                                search_result += '<div class="result_value" onmouseover="sel_result(this)" onmouseout="unsel_result(this)" onclick="location.href = \'http://www.shop-stroitel.ru/catalog/?id=' + kg + '\';">' + vg + '</div>';
                                search_result += '</div>';
                                groups = true;
                            });
                        }
                        else if(k == 'producers') {
                            var producers = false;
                            $.each(v, function(kp, vp) {
                                search_result += '<div class="result_str">';
                                if(!producers)
                                    search_result += '<div class="result_type">производители</div>';
                                else
                                    search_result += '<div class="result_type"></div>';
                                search_result += '<div class="result_value" onmouseover="sel_result(this)" onmouseout="unsel_result(this)" onclick="location.href = \'http://' + vp['s'] + '.shop-stroitel.ru/\';">' + vp['n'] + '</div>';
                                search_result += '</div>';
                                producers = true;
                            });
                        }
                        else if(k == 'elements') {
                            var elements = false;
                            $.each(v, function(ke, ve) {
                                search_result += '<div class="result_str">';
                                if(!elements)
                                    search_result += '<div class="result_type">товары</div>';
                                else
                                    search_result += '<div class="result_type"></div>';
                                search_result += '<div class="result_value" onmouseover="sel_result(this)" onmouseout="unsel_result(this)" onclick="location.href = \'http://' + (ve['s'] ? ve['s'] : 'www') + '.shop-stroitel.ru/' + (ve['s'] ? '' : 'catalog/') + '?id=' + ke + '\';">'  + ve['n'] + '</div>';
                                search_result += '</div>';
                                elements = true;
                            });
                        }
                    });
                    
                    if(true) {
                        search_result += '<div class="result_str">';
                        search_result += '<div class="result_type"></div>';
                        search_result += '<div class="result_value"><a href="http://www.shop-stroitel.ru/catalog/?search_query=' + search_query + '">все результаты поиска &rarr;</a></div>';
                        search_result += '</div>';
                    }
                    
                    $('#search_results').html(search_result);
                    $('#search_results').show('fast');
            });
        } else if (key !== 38 & key !== 40) {
            $('#search_results').html('');
            $('#search_results').hide('fast');
        } else if (key == 38 || key == 40) {
            var qtyElements = 0;
			if ($('#search_results').css('display') == 'block') {
				$('#search_results .result_str').each(function(i) {
					searchResElem[i] = $(this).find('.result_value');
					if($(this).find('.result_value').hasClass('result_value_selected')) { //.hasClass('.result_value_selected')
                        searchResElemSelected = i;
						//alert('1');
					}
				});
                qtyElements = searchResElem.length;
				if (key == 40) {
                    var i = searchResElemSelected + 1 == qtyElements ? 0 : searchResElemSelected + 1;
				} else if (key == 38){
                    searchResElemSelected = searchResElemSelected == -1 ? 0 : searchResElemSelected;
                    var i = searchResElemSelected == 0 ? qtyElements - 1 : searchResElemSelected - 1;
				}
                sel_result(searchResElem[i]);
                searchResElemHref = searchResElem[i];
                unsel_result(searchResElem[searchResElemSelected]);
			}
        }
    });

    $('#search_query').keydown(function(event) {

        var key;
		//var searchResElemNext = 0;
            
        if(window.event) key = window.event.keyCode;
        else if (event) key = event.which;
    });

    $("a.zoom").fancybox({'zoomSpeedIn' : 500, 'zoomSpeedOut': 500});
    $("a.iframe").fancybox({'frameWidth' : 600, 'frameHeight': 470});
	$("a.iframe2").fancybox({
		'frameWidth' : 320,
		'frameHeight': 250,
		'hideOnContentClick': false
	});
	$("a#inline").fancybox({'hideOnContentClick': false, 'autoScale': true});
	
	$('img[src*=add_to_cart_small]').click(function() {
		var $element = $(this).parents('.container-new').find('img[src*=width=150]');
		if($element.width() == null)
			$element = $(this).parents('.content').find('img[src*=width=320]');
		var w = $element.width();
		var h = $element.height();
		var begin_x = $element.offset().left;
		var begin_y = $element.offset().top;
		//var end_x =	$('#cart_info').offset().left;
		//var end_y = $('#cart_info').offset().top;
		var $clone = $element.clone();
		$clone
			.prependTo('body')
			.css({'position' : 'absolute', 'left' : begin_x + 'px', 'top' : begin_y + 'px'})
			.animate({
				left: $('#cart_info').offset().left,
				top: $('#cart_info').offset().top
			}, {duration: 1500, queue : false})
			.hide(1500);
		/*for (var i = 0; i < 1000; i++) {
			$clone.css({'left' : ($clone.offset().left + (($('#cart_info').offset().left - begin_x)/1000)) + 'px', 'top' : ($clone.offset().top - ((begin_y - $('#cart_info').offset().top)/1000)) + 'px'});
			//console.log(($clone.offset().left + (($('#cart_info').offset().left - begin_x)/100)) + '-' + ($clone.offset().top - ((begin_y - $('#cart_info').offset().top)/100)));
		}
		
		$clone.hide('fast');*/
		//console.log(end_x + '-' + end_y);
	});
	
	//всплывающая подсказка о подарке	
	$('#cart_present').live("mouseover", function(event) {
			$('#tooltip').show();
	});
	
	$('#cart_present').live("mouseout", function() {
			$('#tooltip').hide();
	});
	
	// скрытие пустых закладок в карточке товара
		
		if ($('#tab4c').length) {
			if ($('#tab4c').html().length<50) {
				$('#tab4t').hide();       
				$('#tab4c').hide();
			};
			
			if ($('#tab4c').html().length>50) {
				$('#tab1t').removeClass('tab_sel');    
				$('#tab2t').removeClass('tab_sel');
				$('#tab3t').removeClass('tab_sel');
				$('#tab4t').removeClass('tab_sel'); 
				$('#tab1t').addClass('tab');   
				$('#tab2t').addClass('tab');
				$('#tab3t').addClass('tab');
				$('#tab4t').removeClass('tab');       
				$('#tabt').addClass('tab_sel');
				$('#tab1c').hide();
				$('#tab2c').hide();
				$('#tab3c').hide();
				$('#tab4c').show();
			}
		};
		
		if ($('#tab3c').length) {
			if ($('#tab3c').html().length<50) {
				$('#tab3t').hide();       
				$('#tab3c').hide();
			};
			
			if ($('#tab3c').html().length>50) {
				$('#tab1t').removeClass('tab_sel');   
				$('#tab2t').removeClass('tab_sel');
				$('#tab3t').removeClass('tab_sel');
				$('#tab4t').removeClass('tab_sel'); 
				$('#tab1t').addClass('tab');   
				$('#tab2t').addClass('tab');
				$('#tab4t').addClass('tab');  
				$('#tab3t').removeClass('tab');       
				$('#tab3t').addClass('tab_sel');
				$('#tab1c').hide();
				$('#tab2c').hide();
				$('#tab4c').hide();
				$('#tab3c').show();
			}
		};
		
		if ($('#tab2c').length) {
			if ($('#tab2c').html().length<50) {
				$('#tab2t').hide();
				$('#tab2c').hide();       
			};
			
			if ($('#tab2c').html().length>50) {
				$('#tab1t').removeClass('tab_sel');    
				$('#tab2t').removeClass('tab_sel');
				$('#tab3t').removeClass('tab_sel');
				$('#tab4t').removeClass('tab_sel');  
				$('#tab1t').addClass('tab');   
				$('#tab3t').addClass('tab');
				$('#tab4t').addClass('tab');
				$('#tab2t').removeClass('tab');      
				$('#tab2t').addClass('tab_sel');
				$('#tab1c').hide();
				$('#tab3c').hide();
				$('#tab4c').hide();
				$('#tab2c').show();
			}
		};
		
		if ($('#tab1c').length) {
			if ($('#tab1c').html().length<50) {
				$('#tab1t').hide();       
				$('#tab1c').hide();
			};
			
			if ($('#tab1c').html().length>50) {
				$('#tab1t').removeClass('tab_sel');    
				$('#tab2t').removeClass('tab_sel');
				$('#tab3t').removeClass('tab_sel');
				$('#tab4t').removeClass('tab_sel');    
				$('#tab1t').addClass('tab');   
				$('#tab2t').addClass('tab');
				$('#tab3t').addClass('tab');
				$('#tab4t').addClass('tab');
				$('#tab1t').removeClass('tab');
				$('#tab1t').addClass('tab_sel');
				$('#tab2c').hide();
				$('#tab3c').hide();
				$('#tab4c').hide();
				$('#tab1c').show();
		}
		};
	
	

	/*Типа метод прогрессивного улучшения*/
	if($('#form').length) {
		if($('#form #main_phone').length) {
			$('#form input.phone').live('focus', function() {
									if($(this).hasClass('example_phone'))
										$(this).removeClass('example_phone').val('');
								})
								.live('blur', function() {
									if($(this).val() == '')
										$(this).addClass('example_phone').val('495 1234567');
								})
								.trigger('blur');
						
			if($('#form tr.extra_phone').length)
				$('#form tr.extra_phone:last').after('<tr><td colspan="2"><div id="extra_phone">Добавить дополнительный телефон</div></td></tr>');
			else
				$('#form #main_phone').after('<tr><td colspan="2"><div id="extra_phone">Добавить дополнительный телефон</div></td></tr>');		
		}
		
		if($('#form #main_address').length) {
			if($('#form tr.extra_address').length) {
				$('#form tr.extra_address:last').after('<tr><td colspan="2"><div id="extra_address">Добавить дополнительный адрес</div></td></tr>');
			}else{
				$('#form #main_address').after('<tr><td colspan="2"><div id="extra_address">Добавить дополнительный адрес</div></td></tr>');	
			}
		}
		
		/* Добавленеи дополнительных полей в форму*/
		$('#form #extra_address, #form #extra_phone').click(function() {
			if(this.id == 'extra_address')
				if($('#main_address input[name=user_address]').val() != '')
					$(this).parent().parent().before('<tr class="extra_address"><td><span class="big">Адрес доставки - дополнительный</span></td><td nowrap><input style="width:280px; float: left;" class="input_normal" name="extra_address[]" type="text" value=""> <div class="remove_address">Удалить</div></td></tr>');
				else
					alert('Введите основной адрес!');
			else if(this.id == 'extra_phone') {
				if(($('#main_phone input[name=phone]').attr('type') == 'text' && !$('#main_phone input[name=phone]').hasClass('example_phone') && $('#main_phone input[name=phone]').val() != '') || $('#main_phone input[name=phone]').attr('type') == 'checkbox') {
					$(this).parent().parent().before('<tr class="extra_phone"><td><span class="big">Телефон - дополнительный</span></td><td nowrap><div><span>+7</span><input class="input_normal phone" name="extra_phone[]" type="text" value=""></div><div><span>добавочный:</span><input class="extension_phone" type="text" name="extension_extra_phone[]" value="" maxlength="50"></div><div class="remove_phone">Удалить</div></td></tr>');
					$('#form input.phone').trigger('blur');
				}else{
					alert('Введите основной телефон!');
				}
			}
		});
		
		/* Удаление дополнительных полей телефона и алреса */
		$('#form .remove_address, #form .remove_phone').live("click", function() {
			$(this).parent().parent().remove();
		});
	}
	
	$('table #legal').toggle(function() {
		$('.legal_field').fadeIn();
	},
	function() {
		$('table .legal_field').fadeOut();
	});
	
	$('table #type_pay input').click(function() {
		if(this.value == '0') {
			$('table tr.delivery').fadeIn();
		}else {
			$('table tr.delivery').fadeOut();
		}
	});
	
	$('#delivery_address').change(function() {
		if($('#delivery_address :selected').val() == '0')
			$('textarea[name=address]').fadeIn();
		else
			$('textarea[name=address]').fadeOut();
	});
	
	$('#form .type_face input').click(function() {
		if(this.value == '1') {	
			if($('table#form .legal_field').length > 0)
				$('table#form .legal_field').fadeIn();
			else if ($('#form div.type_face').length > 0)
				$('#form div.type_face').fadeIn();
		}else{
			if($('table#form .legal_field').length > 0)
				$('table#form .legal_field').fadeOut();
			else if ($('#form div.type_face').length > 0)
				$('#form div.type_face').fadeOut();
		}
	});	
	
	if(($('#form .type_face input').length > 0 && $('#form .type_face input:checked').val() == '0') || ($('form input[name=type_face_order]').length > 0 && $('form input[name=type_face_order]').val() == '0')) {
		$('form .legal_field').fadeOut();
	}
	
	// адаптивность верстки
	if ($('.content').next().length) {
		if($('.content').next().html().length < 500 ) {
			$('.content').next().hide();
		}
	}
	
	if ($('.content').prev().length) {
		if($('.content').prev().html().length < 500 ) {
			$('.content').prev().hide();
		}
	}
	
	$('.group-inner').bind('click', function(){
		location.href = $(this).find('a').attr('href');
	});
	
	if (location.hash == '#full') {setTimeout(function() { $('.full').show(); }, 1000) }
	
	/*$('#form #extra_address').click(function() {
		$(this).parent().parent().before('<tr><td><span>Адрес доставки - дополнительный</span></td><td nowrap><input style="width:280px; float: left;" class="input_normal" name="extra_address[]" type="text" value=""> <div class="remove_address">Удалить</div></td></tr>');
	});
	
	$('#form .remove_address').live("click", function() {
		$(this).parent().parent().remove();
	});*/	
	
	if ($('#vote_inner').length) {
		xajax_vote();
	};
	
	if($('#edost_block').length || $('form[name=calc]').length) {
		$(document.createElement('script')).attr('src', 'http://www.shop-stroitel.ru/js/jquery.ajaxQueue.js').appendTo('head');
		$(document.createElement('script')).attr('src', 'http://www.shop-stroitel.ru/js/jquery.autocomplete.pack.js').appendTo('head');
		$(document.createElement('script')).attr('src', 'http://www.shop-stroitel.ru/js/edost.js').appendTo('head');
		$(document.createElement('link')).attr('href', 'http://www.shop-stroitel.ru/css/jquery.autocomplete.css').attr('type', 'text/css').attr('rel', 'stylesheet').appendTo('head');
		if($('#edost_block').length)
			$('#edost_block form').submit();
	}
	
});
