var informerArray = [, 11, 10, 9, 8, 7, 6, 5, 4, 3, 2, 1];
var currentMenuID = "";

var cloudInt = null;
var cloudCurrent = 0;

$('#phrase').hide();

/* инициализация при загрузке страницы (window.onload) */
$(document).ready(function() {

	cloudInt = setInterval(cloudSitesShow, 200);

	$("#content").load("/pages/home.html");
	$("#menuToddler").css("opacity", "0.1");
	
	informerToggle();
	
	$(".counter").mouseover(function(eventObject) { $(this).stop().animate({ opacity: 1.0 }, 200); }).mouseout(function(eventObject) { $(this).stop().animate({ opacity: 0.1 }, 200); });
});

function informerToggle(action) {
	
	action = ((action) ? action : "open");
	
	if(action == "open") {
		
		$("#informer").css("visibility", "visible").animate({ opacity: 1.0 }, 500, 
			function() {

				$("#informerToddler").animate({ left: 98 + ((informerArray[informerToddler] - 1) * 20) }, 500);
			}).ppdrag();
	}
	else if(action == "close")
		$("#informer").animate({ opacity: 0.1 }, 500,
			function() {
				
				$("#informer").css("visibility", "hidden").css("top", "165px").css("left", "492px");
			});
}

function documentScrollGet() {

	return {scrollLeft: ((self.pageXOffset) ? self.pageXOffset : ((document.documentElement.scrollLeft) ? document.documentElement.scrollLeft : ((document.body) ? document.body.scrollLeft : 0))), scrollTop: ((self.pageYOffset) ? self.pageYOffset : ((document.documentElement.scrollTop) ? document.documentElement.scrollTop : ((document.body) ? document.body.scrollTop : 0))) };
}

/* событие, происходящее после клика на пункт меню */
function getPage(pageID, anchor) {
				
	dialogClose();
	
	if(pageID != "home")
		$("#monitor").animate({ opacity: 0.1 }, 150);
		
	$("#content").animate({ opacity: 0.1 }, 150, 
		function() {
		
			if(pageID == "home") {
			
				currentMenuID = "";
				menuToddlerMoveBack();
		
				$("#top").addClass("topWithBg");
				$("#monitor").animate({ opacity: 1.0 }, 150).css("display", "block");
				$("#phrase").css("display", "block");

				cloudInt = setInterval(cloudSitesShow, 200);
				informerToggle();
			}
			else {
				if($("#" + pageID).is('a'))			
					currentMenuID = pageID;
				else
					currentMenuID = "";
								
				$("#top").removeClass("topWithBg");
				$("#monitor").css("display", "none");
				$("#phrase").css("display", "none");
				cloudSitesHide();
				informerToggle("close");
			}
			
			$("#content").html("<div id=\"content-loader\" class=\"loader\"><!-- --></div>").load("/pages/" + pageID + ".html", function() { if(anchor) { scrollAnchor(anchor); } }).animate({ opacity: 1.0 }, 150);
		});
}

function scrollUp(speed) {
	
	$("html, body").animate({ scrollTop: 0 }, speed);
}

function scrollAnchor(anchor) {
	
	$("html, body").animate({ scrollTop: $("#" + anchor).offset().top }, 1000);
}



/**
 *  Меню 2.0
 */

/* открытие / закрытие подсказок для крайних пунктов */
function menuTipsToggle(tipID, action) {

	if(action == "show")
		$("#" + tipID + "Tip").show("normal");
	else
		$("#" + tipID + "Tip").hide("fast");
}
		
/* движение ползунка к пункту menuID */
function menuToddlerMove(menuID) {
	
	menuToddlerLeft = $("#" + menuID).offset().left - $("#menu").offset().left;

	$("#menuToddler").stop();
		
	if(currentMenuID) 
		$("#menuToddler").animate({ left: menuToddlerLeft }, 300);
	else
		$("#menuToddler").css("visibility", "visible").animate({
			opacity: 1.0,
			left: menuToddlerLeft
		}, 300);
}
		
/* обратное движение ползунка */
function menuToddlerMoveBack() {

	if(currentMenuID)
		menuToddlerMove(currentMenuID);
	else
		$("#menuToddler").stop().animate({
			opacity: 0.1,
			left: 0
		}, 300, function() { $("#menuToddler").css("visibility", "hidden"); });
}




/**
 *  Облако ссылок
 */

/**/
function cloudSitesShow() {
	
		$("div.site:eq(" + cloudCurrent + ")").css("visibility", "visible").animate({ opacity: 1.0 }, 500);
		cloudCurrent++;
		
		if(cloudCurrent >= $("div.site").size())
				clearInterval(cloudInt);
}

function cloudSitesHide() {
	
		$("div.site").css("visibility", "hidden").css("opacity", 0.1);
		clearInterval(cloudInt);
		cloudCurrent = 0;
}



var dialog = {

	initializeWidth: 120,
	initializeHeight: 120,
	width: 0,
	height: 0,
	marginLeft: 0,
	marginTop: 0,
	defaultWidth: 900,
	object: "",
	preloadImage: "",
	preloadText: ""
};

function dialogOpen(type, url) {
	
	dialog.object = $("#dialog").get(0);
	$("#dialog").empty().animate({
			marginTop: documentScrollGet().scrollTop + "px"
		}, 10,
		function() {
			$("#dialog").css("visibility", "visible").addClass("loader")
		});
	
	switch(type) {
		
		case "image":
			dialog.preloadImage = new Image();
			dialog.preloadImage.src = url;
			dialog.preloadImage.onload = dialogResize;
		break;
		
		case "text":
			$("#dialog").animate({
					width: dialog.defaultWidth,
					marginLeft: "-463px",
					marginTop: "-100px"
				}, 500,
				function() {
					$("#dialog").html("<div class=\"text\" onmouseover=\"dialogCloseToggle('show');\" onmouseout=\"dialogCloseToggle('hide');\"><a href=\"#\" onclick=\"dialogClose();return false;\" id=\"dialogClose\" class=\"dialogClose\" onmouseover=\"dialogCloseStop();\"><img src=\"./i/dialog-close.png\" alt=\"\" /></a><div id=\"dialogText\"></div></div>");
					$("#dialogText").load(url, function() { $("#dialog").removeClass("loader").css("height", $("#dialogText").height()); });
				});
		break;
	}
}

function dialogResize(type) {
	
	dialog.width = dialog.preloadImage.width;
	dialog.height = dialog.preloadImage.height;
			
	dialog.marginLeft = (0 - ((dialog.preloadImage.width+26)/2));
	dialog.marginTop = (0 - ((dialog.preloadImage.height+26)/2)) + documentScrollGet().scrollTop;

	$("#dialog").animate({
			marginTop: documentScrollGet().scrollTop + "px"
		}, 10,
		function() {
			
			$("#dialog").animate({
					width: dialog.width,
					height: dialog.height,
					marginLeft: dialog.marginLeft + "px",
					marginTop: dialog.marginTop + "px"
				}, 500, 
				function() {
					$("#dialog").removeClass("loader").html("<div class=\"image\"><a href=\"#\" onclick=\"dialogClose();return false;\" id=\"dialogClose\" class=\"dialogClose\" onmouseover=\"dialogCloseStop();\"><img src=\"./i/dialog-close.png\" alt=\"\" /></a><img src=\"" + dialog.preloadImage.src + "\" onmouseover=\"dialogCloseToggle('show');\" onmouseout=\"dialogCloseToggle('hide');\"></div>");
					if($("#dialog").offset().top < 100) {
		
						dialog.marginTop = dialog.marginTop + (100 - $("#dialog").offset().top);
						$("#dialog").animate({ marginTop: dialog.marginTop + "px" }, 100);
					}
				});
		});
}

function dialogClose() {

	$("#dialog").empty().animate({
		
		width: "70px",
		height: "70px",
		marginLeft: "-35px",
		marginTop: (documentScrollGet().scrollTop - 35) + "px"
	}, 200, function() { $("#dialog").css("visibility", "hidden"); });
}

function dialogCloseToggle(action) {
	
	if(action == "show")
		$("#dialogClose").stop().css("visibility", "visible").animate({ opacity: 1.0 }, 300);
	else
		$("#dialogClose").stop().animate({ opacity: 0.1 }, 300, function() { $("#dialogClose").css("visibility", "hidden"); });
}

function dialogCloseStop() {
	
	$("#dialogClose").css("opacity", 1.0).stop();
}