	/**
	* When the GAS data has loaded, retrieve the first image from each photographer
	* and add that to the home page, then show the home page
	*/
	function buildNavigation()
	{
			var imgs = [];
		
			
			
			if (GAS.data.galleries.length>0)
			{
				var gallery = GAS.data.galleries[0];
				imgs = GAS.imageProxy.getImagesByGallery( gallery );
			}

			
			for (var j=0; j<imgs.length; j++)
			{
				if ( !imgs[j].isVideo())
				{
					var imgTag = createImageHomeTag(imgs[j], true);
					$(imgTag).addClass("thumbOut");
					$("#homeGrid").append(createLITag(imgTag));
				}
			}
		
		var half=Math.min(GAS.data.photographers.length / 2);

		for (var i=0; i<GAS.data.photographers.length; i++)
		{

			var photog = GAS.data.photographers[i];
			var img = GAS.imageProxy.getImagesByPhotograpaher(photog);

			if (img.length>0) 
			{
				//Add photog to main menu.
				var aTag = createPhotogTag(photog);

				$(aTag).click( function(){ loadPage( this.photographerVO ) } );
		
				//Add LI tag with this a tag in it
				if (i<half)
					$("#galleryNavList").append(createLITag(aTag));
				else
					$("#galleryNavList2").append(createLITag(aTag));

				//Add first image from photog to home page
				if (img[1]) 
				{
					var imgTag = createImageTag(img[0], true);
				
					$(imgTag).click(function(){

						$(".navSelected[photogID=" + this.imageVO.photographerID + "]").click();

					});


				}
			}
		}

		
		//Only add ID 1 and 2 to the menu, the rest are under news
		for (var j=GAS.data.pages.length-1; j>=0; j--)
		{
			if (GAS.data.pages[j].id < 3)
			{
				var navItem = createPageTag( GAS.data.pages[j] );
				navItem.onclick=function() { loadPage( this.pageVO ) };
				$("#mainNavListLarge").prepend(  createLITag( navItem ) );

			}
		}

		
		//set toggle state
		$(".toggle").click(navItemToggleHandler);
		
		//Show the header
		$("#header").fadeIn();
			
		showPageFromURL();
		
		
					
	}

		

		

	

	/**
	 * When a nav item is toggled, reset all the other iems in this list.
	 */

	function navItemToggleHandler()
	{
		//turn off selected state for items within this list and set the normal state
		$("li > a").addClass("nav");
		$("li > a").removeClass("navSelected");
		$("li > a").attr("toggled" ,false);
	
		//turn off the normal state for this item and turn on the selected state
	  	$(this).removeClass("nav");
		$(this).addClass("navSelected");
		$(this).attr("toggled" ,true);
	}

	
	/**
	* deselcts all nav items
	*/
	function deselectAllNavItems()
	{
		$("li > a").addClass("nav");
		$("li > a").removeClass("navSelected");
		$("li > a").attr("toggled" ,false);
	}
	/**
	 * Removes the selecte state from the A item passed in
	 * @param {Object} item The A html item to deselect
	 */

	function deselectItem(item)
	{
		if (item)
		{
			item.addClass("nav");
			item.removeClass("navSelected");
		}
	}

	function toggleItem(item)
	{
	
		//turn off selected state for items within this list and set the normal state
		$("li > a").addClass("nav");
		$("li > a").removeClass("navSelected");
		$("li > a").attr("toggled" ,false);
		//turn off the normal state for this item and turn on the selected state
	  	item.removeClass("nav");
		item.addClass("navSelected");
		item.attr("toggled" ,true);
	}

	

	/**
	* Adds the selected state to the A itempassed in 
	* @param {Object} item  The A html item to select
	*/
	function selectItem(item)
	{
		item.removeClass("nav");
		item.addClass("navSelected");
	}

	
/** 
	* Slides the nav bar up and fades out certain elements
	*/

	function hideNav(selectedItem)
	{
		$('#headerContent').animate({height: 80}, menuToggleSpeed);
		$('#galleryNavList > li, #galleryNavList2 > li').fadeOut(menuToggleSpeed);
		
		$('#mainNavListLarge').fadeOut( menuToggleSpeed, function() 
		{  
			$("#mainNavListSmall, #gallerySubNavList ").fadeIn(menuToggleSpeed);
			
			$("#galleryNavList2").css("margin-left", 0);
			selectedItem.parent().fadeIn(menuToggleSpeed);	
		} );
	}

	

	/** 
	* Slides the nav bar down and fades up certain elements
	*/

	function showNav()
	{
		$('#headerContent').animate({height: 110}, menuToggleSpeed);
		
		if (selectedItem)
			selectedItem.parent().fadeOut(menuToggleSpeed);
		
		hidePDFButton();
	
		var count=0;

		$('#mainNavListSmall, #gallerySubNavList').fadeOut( menuToggleSpeed, function()
		{ 
			//This fires for each item we fade, so only run it once.
			if (count++ == 1)
			{
				$("#galleryNavList2").css("margin-left", 250);
				$("#mainNavListLarge, #galleryNavList > li, #galleryNavList2 > li").fadeIn(menuToggleSpeed); 
			}
		} );
	}
	
	function showPDFButton(photogVO)
	{
		$("#pdfButton").attr("href", photogVO.value+"/pdf/");
		$("#pdfButton").click(function(){ $.address.value(photogVO.value+"/pdf/"); return false; } ) ; 
			
		//show the pdf button
		$("#pdfButtonDiv").fadeIn(menuToggleSpeed);
	}
		
	function hidePDFButton()
	{
		//hide the pdf button
		$("#pdfButtonDiv").fadeOut(menuToggleSpeed);
	}


