var jqGallery = {};
jqGallery.server_url = '/ajax.photo_essay.php';
jqGallery.data = {};
jqGallery.isShown = false;
jqGallery.isRotating = false;
jqGallery.rotateDelay = 3500;
jqGallery.init = false;
jqGallery.timerHandle = null;

jQuery(function($){
	$('.photo_essay a').click(function(){
		var album_id = $(this).parents(".photo_essay").attr("alt");

		startSlideShow(album_id);
		return false;
	});

	var mwidth = 116;
	var mheight = 100;


});

jQuery(window).load(function(){
	$j("a.mult_thumb img").each(function(){
		var oImage = $j(this);
		if(oImage.width() > oImage.height()){
			oImage.addClass("wideImage");
		} else {
			oImage.addClass("tallImage");
		}
	});
});

var startSlideShow = function(album_id){
	jQuery(function($){
		$.ajax({
			url:jqGallery.server_url,
			data: 'album_id='+album_id,
			type: 'GET',
			success: jqGallery.displayGallery
		});
	});
};

jqGallery.afterClose = function(){
	jqGallery.isRotating = false;
	jqGallery.isShown = false;
	clearTimeout(jqGallery.timerHandle);

};

// Take over Lightbox
jqGallery.displayGallery = function(datum){

	$("jq_gallery").update(datum);

	LightboxInstance.overlayDuration = 0.5;
	LightboxInstance.resizeDuration = 0.2;

	LightboxInstance.updateImageList();

	var firstEl = $( jQuery("#jq_gallery a:first")[0] );
	LightboxInstance.start(firstEl,jqGallery.afterClose);

	jqGallery.isRotating = true;
	jqGallery.isShown = true;

	// Autorotate Images
	clearTimeout(jqGallery.timerHandle);
	jqGallery.timerHandle = setTimeout(jqGallery.rotateImages,jqGallery.rotateDelay);

	if(!jqGallery.init){

		jqGallery.init = true;

		jQuery("#lightbox").addClass('jqcustom').append('<a href="#" class="goprev">Previous</a>');
		jQuery("#lightbox").append('<a href="#" class="startstop running">Stop slideshow</a>');
		jQuery("#lightbox").append('<a href="#" class="gonext">Next</a>');
		jQuery("#lightbox").append('<a href="#" class="closeit">Close</a>');

		// Handle Stop/Start Button
		jQuery("#lightbox .startstop").click(function(){
			var th = jQuery(this);

			if(th.hasClass("running")){
				// Stop it
				th.html('Start slideshow').removeClass("running");
				jqGallery.isRotating = false;

			} else {
				// Start it
				th.html('Stop slideshow').addClass("running");
				jqGallery.isRotating = true;
			}

			return false;
		});

		// handle previous
		jQuery("#lightbox .goprev").click(function(){
			// Stop it
			jQuery("#lightbox .startstop").html('Start slideshow').removeClass("running");
			jqGallery.isRotating = false;

			// Hide Details first
			jQuery(".jqcustom #imageDataContainer").hide();

			if (LightboxInstance.activeImage != 0){
				LightboxInstance.disableKeyboardNav();
				LightboxInstance.changeImage(LightboxInstance.activeImage - 1);
			} else {
				LightboxInstance.disableKeyboardNav();
				LightboxInstance.changeImage(LightboxInstance.imageArray.length - 1);
			}

			return false;
		});

		// handle next
		jQuery("#lightbox .gonext").click(function(){
			// Stop it
			jQuery("#lightbox .startstop").html('Start slideshow').removeClass("running");
			jqGallery.isRotating = false;

			// Hide Details first
			jQuery(".jqcustom #imageDataContainer").hide();

			if (LightboxInstance.activeImage != (LightboxInstance.imageArray.length - 1)){
				LightboxInstance.disableKeyboardNav();
				LightboxInstance.changeImage(LightboxInstance.activeImage + 1);
			} else {
				LightboxInstance.disableKeyboardNav();
				LightboxInstance.changeImage(0);
			}

			return false;
		});

		// handle close
		jQuery("#lightbox .closeit").click(function(){
			LightboxInstance.end();

			jqGallery.isRotating = false;
			jqGallery.isShown = false;

			clearTimeout( jqGallery.timerHandle );

			return false;
		});

	}

};

jqGallery.rotateImages = function(){

	clearTimeout(jqGallery.timerHandle);

	if(jqGallery.isShown == false){
		return;
	}

	if(jqGallery.isRotating == false){
		jqGallery.timerHandle = setTimeout(jqGallery.rotateImages,1000);
		return;
	}

	// Hide Details first
	jQuery(".jqcustom #imageDataContainer").hide();

	if (LightboxInstance.activeImage != (LightboxInstance.imageArray.length - 1)){
		LightboxInstance.disableKeyboardNav();
		LightboxInstance.changeImage(LightboxInstance.activeImage + 1);
	} else {
		LightboxInstance.disableKeyboardNav();
		LightboxInstance.changeImage(0);
	}

	jqGallery.timerHandle = setTimeout(jqGallery.rotateImages,jqGallery.rotateDelay);
}

