// FUNCTIONS
function hideLargePhotoContent() {
	$('#large-photo-container').fadeOut(1000);
	$('#large-photo-caption').fadeOut(1000);
}
function showBackContent() {
	$('#back-container').fadeIn(500);
}
function hideBackContent() {
	$('#back-container').fadeOut(500);
}
function resetNavigation() {
	$('nav .thumbnails').hide();
	$('nav h3').removeClass('selected');
	$('nav h3').addClass('unselected');
}

// EVENTS
$(document).ready(function(){
	// Load homepage (fades in)
	
	$('#large-photo-container').delay(500).fadeIn(1500);
	
	// Initiate homepage slideshow
	$('#slideshow').cycle({ 
    timeout: 6000, 
    speed: 3000,
		before: slideshowCaption
	});
	function slideshowCaption() { 
    $('#large-photo-caption h2.slideshow').html(this.alt); 
	};

	// Twitter script
	$("#tweets").tweet({
			username: "kiranowal",
			count: 3,
			loading_text: "Loading latest news&hellip;"
	});


	// thumbnail show/hide
	$('nav h3').click(function() {
		var expanderName = $(this).attr("id");
		resetNavigation();
		$(this).removeClass('unselected');
		$(this).addClass('selected');
		$(this).next().show();
		return false;
	});
	$('nav h3 span').click(function() {
		resetNavigation();
		return false;
	});
	$('nav #nav-galleries h3').click(function() {
		// Google Analytics for event handlers (Ajax content)
		// _trackEvent(category, action, opt_label, opt_value)
		_gaq.push(['_trackEvent', 'Category Clicked', 'Galleries']);
		return false;
	});
	$('nav #nav-exhibitions h3').click(function() {
		// Google Analytics for event handlers (Ajax content)
		// _trackEvent(category, action, opt_label, opt_value)
		_gaq.push(['_trackEvent', 'Category Clicked', 'Exhibitions']);
		return false;
	});

	//  AJAX loading script
	$('.thumbnails a[href="#"]').bind('click', function () {
		// create variables for ajax (thumbnails) panel and drop down auto selection
		
		var thumbCategory = $(this).attr("class");
		var thumbPage = $(this).attr("id");
		// show loader
		$("img.thumbnail", this).fadeTo(0, 0.2, function() {
    });
		$(".loading", this).removeClass('hidden');
		// open preview-area and add class to the selected thumbnail
		$('#large-photo-container').load('/' + thumbCategory + '/' + thumbPage + '.php #thumb-container', null, function(){ 
			$("img.thumbnail").delay(250).fadeTo(500, 1.0, function() {
			});
			$(".loading").addClass('hidden');
		});
		$('#large-photo-caption').load('/' + thumbCategory + '/' + thumbPage + '.php #thumb-caption');
		$('.thumbnails img').removeClass('selected');
		$("img", this).addClass('selected');
		$('#large-photo-container').fadeIn(1000);
		$('#large-photo-caption').fadeIn(250);
		$('#large-photo-caption h2').removeClass('slideshow');
		hideBackContent();
		
		// uses HTML5's sessionStorage to determain if it's the users first time (in that session)...
		// ..on the webpage and shows the welcome message. sessionStorage restes when user closes browser.
		if (sessionStorage.firstTime){
		} else {
			sessionStorage.firstTime = 1;
			$('p#welcome-message').delay(2000).fadeIn(2000).delay(6000).fadeOut(2000);
		}
		
		// Google Analytics for event handlers (Ajax content)
		// _trackEvent(category, action, opt_label, opt_value)
		_gaq.push(['_trackEvent', 'Thumbnails Clicked', thumbCategory, thumbPage]);
		
		return false;
	});

	$('#nav-biography h2 a').click(function() {
		hideLargePhotoContent();
		showBackContent();
		$("#nav-biography .loading").removeClass('hidden');
		$('#back-container').load('/index.php #biograpy-container', null, function(){  
			$("#nav-biography .loading").addClass('hidden');
		});
		// Google Analytics for event handlers (Ajax content)
		// _trackEvent(category, action, opt_label, opt_value)
		//_gaq.push(['_trackEvent', 'Category Clicked', 'Biography']);
		return false;
	});
	
	$('#nav-clients h2 a').click(function() {
		hideLargePhotoContent();
		showBackContent();
		$("#nav-clients .loading").removeClass('hidden');
		$('#back-container').load('/index.php #clients-container', null, function(){  
			$("#nav-clients .loading").addClass('hidden');
		});
		// Google Analytics for event handlers (Ajax content)
		// _trackEvent(category, action, opt_label, opt_value)
		//_gaq.push(['_trackEvent', 'Category Clicked', 'Clients']);
		return false;
	});
	
	$('#nav-contact h2 a').click(function() {
		hideLargePhotoContent();
		showBackContent();
		$("#nav-contact .loading").removeClass('hidden');
		$('#back-container').load('/index.php #contact-container', null, function(){  
			$("#nav-contact .loading").addClass('hidden');
		});
		// Google Analytics for event handlers (Ajax content)
		// _trackEvent(category, action, opt_label, opt_value)
		_gaq.push(['_trackEvent', 'Category Clicked', 'Contact']);
		return false;
	});
	
	// slides content off side of screen
	var leftMargin = $('#large-photo-container').css("left");
	$('#large-photo-container').toggle(function() {
		$('header').animate({left: "-300px", opacity: "0"}, 250);
		$('#nav-galleries').delay(50).animate({left: "-300px", opacity: "0"}, 250);
		$('#nav-exhibitions').delay(100).animate({left: "-300px", opacity: "0"}, 250);
		$('#nav-news').delay(150).animate({left: "-300px", opacity: "0"}, 250);
		$('#nav-biography').delay(200).animate({left: "-300px", opacity: "0"}, 250);
		$('#nav-clients').delay(250).animate({left: "-300px", opacity: "0"}, 250);
		$('#nav-contact').delay(300).animate({left: "-300px", opacity: "0"}, 250);
		$('footer').delay(350).animate({left: "-300px", opacity: "0"}, 250);
		$('article').delay(450).animate({left: "-300px", opacity: "0"}, 250);
		$('#large-photo-caption').animate({opacity: "0"}, 400);
		$('#large-photo-container').css({left: "-50%"}, 250);
	}, function(){
		$('header').animate({left: "0px", opacity: "100"}, 250);
		$('#nav-galleries').delay(50).animate({left: "0px", opacity: "100"}, 250);
		$('#nav-exhibitions').delay(100).animate({left: "0px", opacity: "100"}, 250);
		$('#nav-news').delay(150).animate({left: "0px", opacity: "100"}, 250);
		$('#nav-biography').delay(200).animate({left: "0px", opacity: "100"}, 250);
		$('#nav-clients').delay(250).animate({left: "0px", opacity: "100"}, 250);
		$('#nav-contact').delay(300).animate({left: "0px", opacity: "100"}, 250);
		$('footer').delay(350).animate({left: "0px", opacity: "100"}, 250);
		$('article').delay(450).animate({left: "0px", opacity: "100"}, 250);
		$('#large-photo-caption').animate({opacity: "100"}, 400);
		$('#large-photo-container').css({'left' : ''});
	});
});
