
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))) };
}

var dialog = {

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

function dialogOpen(url, desc) {

	dialog.object = $("#dialog").get(0);
	$("#dialog").empty().animate({
			marginTop: documentScrollGet().scrollTop + "px"
		}, 10,
		function() {
			$("#dialog").css("visibility", "visible").addClass("loader")
		});
		
	dialog.desc = ((desc) ? desc : "");
	dialog.preloadImage = new Image();
	dialog.preloadImage.src = url;
	dialog.preloadImage.onload = dialogResize;
}

function dialogResize() {
	
	dialog.width = dialog.preloadImage.width;
	dialog.height = dialog.preloadImage.height + ((dialog.desc) ? 60 : 0);
	
	windowHeight = ((window.innerHeight) ? window.innerHeight : document.body.offsetHeight);
			
	dialog.marginLeft = (0 - ((dialog.preloadImage.width+26)/2));
	//dialog.marginTop = (0 - ((dialog.preloadImage.height+26)/2)) + documentScrollGet().scrollTop - ((((window.innerHeight) ? window.innerHeight : document.body.offsetHeight) - dialog.height) ? ((window.innerHeight) ? window.innerHeight : document.body.offsetHeight) - dialog.height : 0);
	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\"><img src=\"/i/dialog-close.png\" alt=\"\" /></a><img src=\"" + dialog.preloadImage.src + "\"></div>" + ((dialog.desc) ? "<div class=\"desc\">" + dialog.desc + "</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"); });
}

var rector = 3;
var a = 1;
var rattleObject = null;
var startTop = 0;
var startLeft = 0;
var rattleInt = null;

function rattleImage(action, image) {
	
	if(action == "initialize") {
		
		rattleObject = $(image);
		startLeft = rattleObject.css("left");
		startTop = rattleObject.css("top");
		
		rattleInt = setInterval(rattleImage, 50);
	}
	
	if(action == "stop") {
		
		clearInterval(rattleInt);
		rattleObject.css("left", startLeft);
		rattleObject.css("top", startTop);
		
		return false;
	}

	switch(a) {
		
		case 1: rattleObject.css("top", (parseInt(rattleObject.css("top")) + rector)); break;
		case 2: rattleObject.css("left", (parseInt(rattleObject.css("left")) + rector)); break;
		case 3: rattleObject.css("top", (parseInt(rattleObject.css("top")) - rector)); break;
		default: rattleObject.css("left", (parseInt(rattleObject.css("left")) - rector)); break;
	}
	
	a = ((a < 4) ? a + 1 : 1);
}

var menu = 
{	
	business: {
		
		"business_cards" : 1,
		"extra_letterheads" : 1,
		"extra_passes" : 1,
		"business_booklets" : 1,
		"business_presentations" : 1,
		"business_postcards" : 1,
		"business_envelopes" :  1,
		"business_souvenirs" : 1
	},
	
	ad: {
		
		"ad_calendars" : 1,
		"extra_stickers" : 1,
		"ad_notebooks" : 1,
		"ad_stacks" : 1,
		"ad_folders" : 1,
		"extra_stickers" : 1,
		"ad_posters" : 1,
		"ad_leaflets" : 1,
		"ad_flyers" : 1
	},
	
	leaf: {
		
		"extra_letterheads" : 1,
		"extra_passes" : 1,
		"leaf_labels" : 1,
		"extra_letterheads" : 1,
		"leaf_diplomas" : 1
	},
	
	multipage: {
		
		"multipage_brochures" : 1,
		"multipage_journals" : 1,
		"multipage_newspapers" : 1,
		"multipage_papers" : 1
	}
};

function initializeMenu() {
	
	if(!currentMenu)
		return false;
		
	for(var menuFolder in menu) {
		
		if(menu[menuFolder][currentMenu]) {
			
			toggleMenu(menuFolder);
			$("a[href='/" + currentMenu + "/']").addClass("active");
		}
	}
}


function toggleMenu(menuID, action) {
	
	action = ((action) ? action : "open");
	
	if(action == "open") {
		
		$("#" + menuID + "Key").css("display", "none");
		$("#" + menuID + "KeyActive").css("display", "block");
		$("#" + menuID + "Menu").show("fast");
	}
	else {
		
		$("#" + menuID + "Key").css("display", "block");
		$("#" + menuID + "KeyActive").css("display", "none");
		$("#" + menuID + "Menu").hide("fast");
	}
}
