$(document).ready(function() {
	
	//открываем скрытый блок
	function clickOpen() {
		$(this).bind('click',function(){
			$(this).parents('article').find('div.more_cont').toggleClass('hidden');
			$(this).parents('article').find('span.more_open').toggleClass('hidden');
		});	
	}
	
	$('.more_open').each(clickOpen);
	
	$("a.zoom").fancybox();
	
	
	//main map	
	var cache = [];
	  $.preLoadImages = function() {
	    var args_len = arguments.length;
	    for (var i = args_len; i--;) {
	      var cacheImage = document.createElement('img');
	      cacheImage.src = arguments[i];
	      cache.push(cacheImage);
	    }
	  }		  
	$.preLoadImages("/design/images/img_all_light.jpg", "/design/images/tree.png", "/design/images/bytovki.png", "/design/images/project_works.png", "/design/images/kotlovan.png", "/design/images/bridge.png", "/design/images/seaside.png", "/design/images/bottom.png", "/design/images/bilding.png", "/design/images/arrow_tooltip.png");
	
	
	var activeArea;
	
	//Регулярное выражение для поиска в main_tooltip класса содержащего _info
	var regExec = /\b\w*_info\b/i;
	//Регулярное выражение для получения чистого класса, без _info
	var regRepl = /_info/i;
	//Регулярное выражение для поиска в main_map класса содержащего view_
	var regExec2 =/\bview_\w*\b/i;
	

	//подсвечиваем область при наведении
	function hoverOpen() {
		$(this).hover(function(){
			var activeArea = $(this).attr('rel');
			$(this).parents('#main_map').toggleClass('view_' + activeArea);
		});
	}
	
	//открываем адрес при клике на точку на карте
	function clickArea() {
		$(this).bind('click',function(){
			var activeArea = $(this).attr('rel');
			$('#main_map .'+ activeArea +'_info').removeClass('hidden');
			//прячем картинку
			$('#main_map').addClass('not_img');			
			//делаем неактивными к нажатию и наведению ВСЕ области на карте
			$('#main_map area').unbind();
			//активируем функцию закрытия тултипа при клике на общую область
			$('#main_map .img_map').each(clickAllClose);
			return false;
		});	
	}
	
	//закрываем адрес при клике на кнопку close
	function clickClose() {
		$(this).bind('click',function(){	
			activeArea = $(this).parents('.main_tooltip').attr('class');
			activeArea = (regExec.exec(activeArea)).toString().replace(regRepl,"");			
			//закрываем тултип при клике на кнопку close
			$(this).parents('.main_tooltip').addClass('hidden');
			//снимаем подсветку у области
			$(this).parents('#main_map').removeClass('view_' + activeArea);
			//возвращаем картинку
			$('#main_map').removeClass('not_img');	
			//возвращаем активность областям на карте			
			$('#main_map area').each(hoverOpen);
			$('#main_map area').each(clickArea);
			//выключаем функцию закрытия тултипа при клике на общую область
			$('#main_map .img_map').unbind();
		});
	}

	//закрываем тултип при клике на любую область вне активного блока
	function clickAllClose() {
		$(this).bind('click',function(){	
			activeArea = $('#main_map').attr('class');
			activeArea = (regExec2.exec(activeArea)).toString();
			//закрываем тултип при клике на кнопку close
			$('.main_tooltip').addClass('hidden');
			//снимаем подсветку у области	
			$('#main_map').removeClass(activeArea);
			//возвращаем картинку
			$('#main_map').removeClass('not_img');	
			//возвращаем активность областям на карте			
			$('#main_map area').each(hoverOpen);
			$('#main_map area').each(clickArea);
			//выключаем функцию закрытия тултипа при клике на общую область
			$('#main_map .img_map').unbind();
		});
	}
	
	$('#main_map area').each(hoverOpen);
	$('#main_map area').each(clickArea);
	$('#main_map .close_tooltip').each(clickClose);
	
});
