﻿$(document).ready(function() {
	html.links();
	html.search();
	html.press();
	//html.corners();
	//html.regions();
	//html.lightbox();
});

maps = {
	
	cities: ["Москва", "Санкт-Петербург", "Абакан", "Анадырь", "Архангельск", "Астрахань", "Барнаул", "Белгород", "Биробиджан", "Благовещенск", "Брянск", "Великий Новгород", "Владивосток", "Владикавказ", "Владимир", "Волгоград", "Вологда", "Воронеж", "Горно-Алтайск", "Грозный", "Екатеринбург", "Иваново", "Ижевск", "Иркутск", "Йошкар-Ола", "Калининград", "Калуга", "Кемерово"],
	links: ["moscow", "spb", "abakan", "anadyr", "arkhangelsk", "astrakhan", "barnaul", "belgorod", "birobidzhan", "blagoveschensk", "bryansk", "novgorod", "vladivostok", "vladikavkaz", "vladimir", "volgograd", "vologda", "voronezh", "gorno-altaysk", "grozny", "ekaterinburg", "ivanovo", "izhevsk", "irkutsk", "yoshkar-ola", "kaliningrad", "kaluga", "kemerovo"],
	x: [55.7535, 59.9385,  53.7209, 64.7366, 64.5458, 46.3496, 53.3563, 50.6004, 48.8006, 50.2749, 53.2810, 58.5227, 43.1340, 43.0186, 56.1197, 48.7088, 59.2230, 51.6625, 51.9581, 43.3318, 56.8380, 57.0086, 56.8567, 52.3130, 56.6363, 54.7197, 54.5351, 55.3712],
	y: [37.6092, 30.3134, 91.4424, 177.4773, 40.5517, 48.0303, 83.7616, 36.5981, 132.8991, 127.5341, 34.3762, 31.2703, 131.9284, 44.6801, 40.3413, 44.5142, 39.8838, 39.2040, 85.9712, 45.6448, 60.597, 40.9967, 53.1740, 104.2756, 47.8745, 20.5008, 36.2476, 86.0524],
	healthIcon: null,
	
	init: function() {
		$("#map-geography").each(function() {
			map = new google.maps.Map2(this);
			map.setCenter(new google.maps.LatLng(55.7864, 79), 3);
			map.addControl(new GSmallMapControl());
			
			maps.healthIcon = new GIcon();
			maps.healthIcon.image = "/images/marker.png";
			maps.healthIcon.iconSize = new GSize(17, 17);
			maps.healthIcon.iconAnchor = new GPoint(6, 20);
			maps.healthIcon.infoWindowAnchor = new GPoint(5, 1);
			
			for (i=0; i<maps.cities.length; i++) {
				var point = new GLatLng(maps.x[i], maps.y[i]);
				map.addOverlay(maps.createMarker(point, i));
			}
		});
		
		$("#map-geography-moscow").each(function() {
			map = new google.maps.Map2(this);
			map.setCenter(new google.maps.LatLng(53.7209, 91.4424), 10);
			map.addControl(new GSmallMapControl());
		});
	},
	
	createMarker: function(point, number) {
		var marker = new GMarker(point, { title: maps.cities[i], icon: maps.healthIcon });
		marker.value = number;
		GEvent.addListener(marker,"click", function() {
			window.location = "/geography/" + maps.links[number];
		});
		return marker;
	}
}

ajax = {
}

html = {
	press: function() {
		$blocks = $("div.press-center div.view");
		$lists = $("div.press-header li");
		$links = $("div.press-header a");
		
		$links.click(function(event) {
			var index = $links.index(this);
			$blocks.hide();
			$blocks.eq(index).show();
			$lists.removeClass("selected");
			$lists.eq(index).addClass("selected");
			event.preventDefault();
		});
	},
	
	regions: function() {
		if (("#map-regions").length) {
			
			$switchRegion = $("#switch-region");
			$switchRegionSpan = $switchRegion.parent();
			$switchCity = $("#switch-city");
			$switchCitySpan = $switchCity.parent();
			
			$districts = $("#districts").find("a");
			$districtLists = $("#districts").find("li");
			$districtBlocks = $("#map-regions div.district-block");
			$activeDistrict = null;

			$regions = $("#map-regions span.region");
			$cities = $("#map-regions span.city");
			
			$switchRegion.live("click", function() {
				$cities.hide();
				$regions.show();
				$switchRegionSpan.html('Области и регионы');
				$switchCitySpan.html('<a href="javascript://" id="switch-city" class="local">Города</a>');
			});
			$switchCity.live("click", function() {
				$regions.hide();
				$cities.show();
				$switchCitySpan.html('Города');
				$switchRegionSpan.html('<a href="javascript://" id="switch-region" class="local">Области и регионы</a>');
			});
			
			$districts.live("click", function() {
				if ($activeDistrict != null) {
					$districtLists.eq($activeDistrict).removeClass("selected");
					$districtBlocks.eq($activeDistrict).hide();
					$districtLists.eq($activeDistrict).html('<a href="javascript://" class="local">' + $districtLists.eq($activeDistrict).text() + '</a>');
					$districts = $("#districts").find("a");
					$districtLists = $("#districts").find("li");
				}
				var i = $districts.index(this);
				$districtLists.eq(i).addClass("selected");
				$districtLists.eq(i).html($districts.eq(i).text());
				$districtBlocks.eq(i).show();
				$activeDistrict = i;
			});
			
			$districts.eq(0).click();
			$switchRegion.click();
		}
	},
	quote: function() {
		$quote = $("blockquote");
		var html = $quote.html();
		$quote.html("");
		$quote.append("<div>" + html + "</div>");
	},
	links: function() {
		$("a[rel=external]").attr({target:"_blank"}).addClass("external");
	},
	zebra: function() {
		$("table.data tr:odd td").addClass("zebra");
	},
	flash: function() {
		setTimeout(function() {
			$("#flashMessage").slideUp(200);
		}, 3000);
	},
	history: function() {
		var $lists = $(".history > ul > li");
		var $pads = $(".history ul li ul li");
		$pads.append("<a class=\"close\"></a>");
		var $openLinks = $(".history a.open");
		var $closeLinks = $(".history a.close");
		
		$openLinks.each(function(i, item) {
			$(this).click(function() {
				$lists.addClass("fade");
				$lists.removeClass("selected");
				$lists.eq(i).addClass("selected");
			});
		});

		$closeLinks.each(function(i, item) {
			$(this).click(function() {
				$lists.removeClass("fade");
				$lists.removeClass("selected");
			});
		});
	},
	product: function() {
		if ($(".product").size()) {
			var $links = $(".product-sizes a");
			var $images = $(".product img");
			var $lists = $(".product-sizes li");
			$images.eq(0).show();
			
			$lists.eq(0).addClass("selected");
			$links.eq(0).replaceWith("<span>" + $links.eq(0).text() +"</span>");
			
			$links.live("click", function() {
				
				var index = $lists.index($(this).parent());

				$images.hide();
				$images.eq(index).show();
				
				$lists.removeClass("selected");
				$spans = $(".product-sizes span");
				$spans.each(function() {
					$(this).replaceWith("<a href=\"javascript://\">" + $(this).text() +"</a>");								 
				});
				
				$(this).parent().addClass("selected");
				$(this).replaceWith("<span>" + $(this).text() +"</span>");	
			});
		}
	},
	menu: function() {
		$(".menu li.selected").each(function() {
			$element = $(this);
			var height = $element.height() + 8;
			if ($element.hasClass("sub")) {
				height = height - 2;
			}			
			if (height > 25)
				height += 2;
			$element.append("<span class=\"corner-top\"></span>").append("<span class=\"corner-bottom\" style=\"margin-top:" + height + "px\"></span>").append("<span class=\"corner-top2\"></span>").append("<span class=\"corner-bottom2\" style=\"margin-top:" + height + "px\"></span>");
		});
	},
	corners: function() {
		$(".rounded").each(function() {
			$element = $(this);
			$element.append("<div class=\"tl\"></div>").append("<div class=\"tr\"></div>").append("<div class=\"bl\"></div>").append("<div class=\"br\"></div>");
		});
	},
	search: function() {
		$searchInput = $("input[name=search_theme_form]");
		$searchValue = $searchInput.val();
		
		$searchInput.click(function() {
			if ($searchInput.val()==$searchValue)
				$searchInput.val("");
		}).blur(function() {
			if ($searchInput.val()=="") {
				$searchInput.val($searchValue);
			}
			$searchValue = $searchInput.val();
		});
	},
	lightbox: function() {
		$("div.photo-gallery div.photo a").lightBox({
			overlayBgColor: '#000',
			overlayOpacity: 0.75,
			imageLoading: '/images/lightbox-ico-loading.gif',
			imageBtnClose: '/images/lightbox-btn-close.gif',
			imageBtnPrev: '/images/lightbox-btn-prev.gif',
			imageBtnNext: '/images/lightbox-btn-next.gif',
			containerResizeSpeed: 350,
			txtImage: 'Фото',
			txtOf: 'из'
   });
	}
}
