var vSliderSpeed = 500; // скорость (пиксель/с) сдвига вертикального слайдера
var hSliderSpeed = 500; // скорость (пиксель/с) сдвига горизонтального слайдера
var formSpeed = 300; // время (мс) открытия/закрытия форм добавления фото/видео

$(document).ready(function(){

	// скрипты для IE6
	if ( $.browser.msie && $.browser.version < 7 ) {

		// открытие/закрытие подменю (для IE6)

		$(".menu ul li").not(".menu ul ul li").hover(function(){
			$(this).addClass("hover" + ( $(this).hasClass("has-submenu") ? " has-submenu-hover" : "" ) );
		}, function(){
			$(this).removeClass("hover").removeClass("has-submenu-hover");
		});

		// установка высоты контейнера изображения в шапке

		$(".head-pic").height( $(".head-pic").height() );

		makeHover( ".trigger a", "hover" );
	}
/*
	// растягиваем меню

	var $items = $(".menu").children("ul").children("li");
	var itemWidth = 0;
	var menuWidth = $(".menu").children("ul").outerWidth() - $items.length * 2;

	for ( var i = 0; i < $items.length; i++ )
		itemWidth += $items.eq(i).width();

	for ( var i = 0; i < $items.length; i++ )
		$items.eq(i).width( Math.round( menuWidth * $items.eq(i).width() / itemWidth ) );
*/
	// выравниваем непропорциональные картинки в галерее
	$(".photo img, .gallery img, .stuff-preview img").each(function(){
		$(this).css( "top", ($(this).parent().height() - $(this).height()) / 2 + "px" );
	});

	// оживляем вертикальный слайдер

	$(".v-slides").each(function(){
		$(this).find("li:first").addClass("first current");
		$(this).find("li:last").addClass("last");
	});

	$(".v-slider-btn").click(function(){

		var action = false; // нужно ли двигать слайдер
		var $slider = $(this).siblings(".v-slides").find("ul"); // контейнер слайдов
		var $slides = $slider.find("li"); // слайды
		var cur = $slides.index( $slider.find(".current") ); // индекс текущего слайда
		var sliderHeight = 0; // высота всех слайдов в сумме
			for ( var i = 0; i < $slides.length; i++ )
				sliderHeight += $slides.eq(i).outerHeight();

		if ( $(this).hasClass("v-slider-up") && cur > 0 ) {
			cur--;
			action = true;
		}

		if ( $(this).hasClass("v-slider-down") && ! $slider.hasClass("at-the-end") && cur < $slides.length - 1 ) {
			cur++;
			action = true;
		}

		// если надо, крутим
		if ( action && sliderHeight > $slider.parent().height() ) {
			$slider.find(".current").removeClass("current");
			$cur = $slides.eq(cur);
			$cur.addClass("current");

			var newTop;
			if ( $cur.position().top < sliderHeight - $slider.parent().height() - 15 ) {
				newTop = - $cur.position().top - 1;
				$slider.removeClass("at-the-end");
			}
			else {
				newTop = $slider.parent().height() - sliderHeight;
				$slider.addClass("at-the-end");
			}

			$slider.stop().animate({
				top: [newTop, 'linear']
			}, 1000 * Math.abs( $slider.position().top - newTop ) / vSliderSpeed );
		}
	});

	// оживляем горизонтальный слайдер

	$(".h-slides").each(function(){
		$(this).find("li:first").addClass("current");
		$(this).find("li:last").addClass("last");
	});

	$(".h-slider-btn").select(function(){
		return false;
	});

	$(".h-slider-btn").click(function(){
		var action = false; // нужно ли двигать слайдер
		var $slider = $(this).siblings(".h-slides").find("ul"); // контейнер слайдов
		var $slides = $slider.find("li"); // слайды
		var cur = $slides.index( $slider.find(".current") ); // индекс текущего слайда
		var sliderWidth = 0; // ширина всех слайдов в сумме
			for ( var i = 0; i < $slides.length; i++ )
				sliderWidth += $slides.eq(i).outerWidth();

		if ( $(this).hasClass("h-slider-left") && cur > 0 ) {
			cur--;
			action = true;
		}

		if ( $(this).hasClass("h-slider-right") && ! $slider.hasClass("at-the-end") && cur < $slides.length - 1 ) {
			cur++;
			action = true;
		}

		// если надо, крутим
		if ( action && sliderWidth > $slider.parent().width() ) {

			$slider.find(".current").removeClass("current");
			$cur = $slides.eq(cur);
			$cur.addClass("current");

			var newLeft;
			if ( $cur.position().left < sliderWidth - $slider.parent().width() ) {
				newLeft = - $cur.position().left - 1;
				$slider.removeClass("at-the-end");
			}
			else {
				newLeft = $slider.parent().width() - sliderWidth;
				$slider.addClass("at-the-end");
			}

			$slider.stop().animate({
				left: [newLeft, 'linear']
			}, 1000 * Math.abs( $slider.position().left - newLeft ) / hSliderSpeed );
		}
	});

	// показываем на карте иконки, которые изначально включены в легенде

	function getTriggerType( $obj )
	{
		return $obj.parent().attr("class").replace( "trigger trigger-", "" );
	}

	$(".trigger a.selected").each(function(){
		$(".icons").addClass( "show-" + getTriggerType( $(this) ) );
	});

	// переключение триггеров в легенде карты

	$(".trigger a").click(function(){
		$(this).toggleClass("selected");

		var type = getTriggerType( $(this) );
		if ( $(this).hasClass("selected") )
			$(".icons").addClass( "show-" + type );
		else
			$(".icons").removeClass( "show-" + type );

		return false;
	});

	// открываем форму добавления фото

	$(".add-photo-btn").click(function(){
		$(".add-video").slideUp( formSpeed, function(){
		$(".add-linck").slideUp( formSpeed, function(){
			$(".add-photo").slideDown( formSpeed );
		});
		});
	});

	// открываем форму добавления видео

	$(".add-video-btn").click(function(){
		$(".add-photo").slideUp( formSpeed, function(){
		$(".add-linck").slideUp( formSpeed, function(){
			$(".add-video").slideDown( formSpeed );
		});
		});
	});

	// открываем форму добавления ссылки

	$(".add-linck-btn").click(function(){
		$(".add-photo").slideUp( formSpeed, function(){
		$(".add-video").slideUp( formSpeed, function(){
			$(".add-linck").slideDown( formSpeed );
		});
		});
	});
	//проверка отображения карты
    mapshowcheck();
});


function makeHover( object, className )
{// добавляет к объекту класс при наведении мыши

	$("" + object).hover(
		function(){
			$(this).addClass(className);
		},
		function(){
			$(this).removeClass(className);
		}
	);
}
function mapshow(){
	$.ajax({url: '/gmap_show?show='+$('#my_map_div').is(':hidden'),
		async: false,
		complete:
		function(){
			if ($('#my_map_div').is(':hidden')){				
				$('#my_map_div').show();
				if ($('#gmap_css').val()=="0"){
					$('#left_menu').css("margin-top","-450px");

				}
				$('#gmap_hide').val('1');
				refreshmymap();
			}else{
				$('#my_map_div').hide();
				if ($('#gmap_css').val()=="0"){
					$('#left_menu').css("margin-top","15px");
				}
				$('#gmap_hide').val('1');
			}
		}
	});
}
function mapshowcheck(){

    if (document.getElementById('gmap_hide')){
		if ($('#gmap_hide').val()==1){
			if ($('#gmap_css').val()=="0"){
					$('#left_menu').css("margin-top","-450px");
				}
			$('#my_map_div').show();
			refreshmymap();
		}else{
			if ($('#gmap_css').val()=="0"){
					$('#left_menu').css("margin-top","15px");
				}			
			$('#my_map_div').hide();
		}
	}
}
function reyting_vote(place_id){
    $.ajax({
    	url: '/reyting_vote?vote='+$('#reyting_vote').val()+'&place='+place_id,
		async: false,
		complete:
		function(){
             $('#vote').hide();
		}
	});
}
