var GalleryNavigation = Base.extend({

	constructor: function() {
		this.NAVIGATION_VISIBLE = 0;
		this.injectBehaviour();
	},
	
	injectBehaviour : function() {
		var me = this;
		$("main_nav_photos a").click(function() {return false;});
		$("#main_nav_photos").click(function() {
			if (me.NAVIGATION_VISIBLE == 0) {
				var myMask = document.createElement('div');
				$(myMask).attr("id", "mask");
				$(myMask).click(function() {
					me.hideNavigation();
				});
				$("body").append(myMask);
				$(myMask).css("width", $("body").width() + "px");
				if (!jQuery.support.objectAll) {
					//ugly hack, don't have time to explore this
					$(myMask).css("height", ($(document).height() - 4) + "px");
				} else {
					$(myMask).css("height", $(document).height() + "px");
				}
				$(myMask).css("display", "none");
				$(myMask).fadeIn("slow", function() {
					$("#main_nav_photos>ul").css("display", "block");
					$("#main_nav_photos .selected ul").css("display", "block");
					me.NAVIGATION_VISIBLE = 1;
				});
			}
		});
		$("#main_nav_photos ul").css("display", "none");
		$("#main_nav_photos ul li ul").css("display", "none");
		$("#main_nav_photos ul li").click(function() {
			$("#main_nav_photos ul li ul").css("display", "none");
			$("#main_nav_photos ul li").attr("class", "");
			$(this).attr("class", "selected");
			$(this).children("ul").css("display", "block");
		});
	},
	
	hideNavigation : function() {
		this.NAVIGATION_VISIBLE = 0;
		$("#mask").fadeOut("slow", function() {
			$("#mask").remove();
		});
		$("#main_nav_photos>ul").css("display", "none");
	}

});
