main = function() {
	var nav,mainNavItem,bldNavItem;
	
	return {
		
		ready: false,
		inNav: false,
		inBldgNav: false,
		
		init: function() {
			nav = $('ul#mainNav');
			
			nav.find('a').focus(function() { if (this.blur) this.blur(); });
			$('ul#footer').find('a').focus(function() { if (this.blur) this.blur(); });
			
			mainNavItem = nav.find('> li > a.active').parent();
			bldNavItem = $('ul#building-icons').find('li > a.active').parent();
			
			nav.find('> li').mouseenter(this.enterMainNav).mouseleave(this.leftMainNav);
			nav.find('li.the-buildings > ul > li').mouseover(this.enterBldgNav).mouseout(this.leftBldgNav);
			
			$('ul#galnav a').click(this.setGalleryImage);
			
			window.setTimeout('main.ready=true',100);
		},
		
		toggleSound: function(el) {
			if (document.cookie == 'sound=1') {
				document.cookie = 'sound=0; path=/';
			} else {
				document.cookie = 'sound=1; path=/';
			}
			
			$('ul#footer li.ton a').toggleClass('active');
			toggleSound();
		},
		
		enterBldgNav: function() {
			main.inBldgNav = true;
			var t = $(this),bld = $('ul#building-icons');
			bld.find('a').removeClass('active');
			bld.find('li.' + t.attr('className')).children('a').addClass('active');
		},
		
		leftBldgNav: function() {
			main.inBldgNav = false;
			setTimeout('main.restoreBldgNav()',200);
		},
		
		restoreBldgNav: function() {
			if (!main.inBldgNav) {
				var bld = $('ul#building-icons');
				bld.find('a').removeClass('active');
				bldNavItem.children('a').addClass('active');
			}
		},
		
		enterMainNav: function() {
			if (!main.ready) {
				return false;
			}
			
			main.inNav = true;
			
			var overItem = $(this),curItem = nav.find('> li > a.active').parent();
			
			if (overItem.get(0) != curItem.get(0)) {
				main.hideItem(curItem);
				main.showItem(overItem);
			}
		},
		
		leftMainNav: function() {
			if (!main.ready) {
				return false;
			}

			main.inNav = false;
			setTimeout('main.restoreMainNav()',200);
		},
		
		restoreMainNav: function() {
			if (!main.inNav) {
				curItem = nav.find('> li > a.active').parent();
				
				if (curItem.get(0) != mainNavItem.get(0)) {
					main.hideItem(curItem);
					main.showItem(mainNavItem);
				}
			}
		},
		
		hideItem: function(item) {
			item.find('> ul').slideUp(100);
			item.children('a').removeClass('active');
		},
		
		showItem: function(item) {
			item.find('> ul').slideDown(100);
			item.children('a').addClass('active');
		},
		
		// gallery stuff
		setGalleryImage: function() {
			var t = $(this);
			console.log(t);
			$('div#flashcontent img').attr('src',t.attr('href'));
			$('ul#galnav a').removeClass('active');
			t.addClass('active');
			return false;
		}
	};
}();

$(document).ready(function(){
	main.init.call(main);
});