	jQuery(function($) {
		
		$('ul.gal-gallery').galleria({
			history   : false, // activates the history object for bookmarking, back-button etc.
			clickNext : true, // helper for making the image clickable
			insert    : '#main_image', // the containing selector for our main image
			onImage   : function(image,caption,thumb) { // let's add some image effects
				
				// fade in the image & caption
				if(! ($.browser.mozilla && navigator.appVersion.indexOf("Win")!=-1) ) { // FF/Win fades large images terribly slow
					image.css('display','none').fadeIn(1000);
				}
				caption.css('display','none').fadeIn(1000);
								
				// fetch the thumbnail container
				var _li = thumb.parents('li');
				
				// fade out inactive thumbnail
				_li.siblings().children('img.selected').fadeTo(500,0.3);
				
				// fade in active thumbnail
				thumb.fadeTo('fast',1).addClass('selected');
				
				// add a title for the clickable image
				image.attr('title','Next image >>');
								
				//$.fn.resizeGalImage();
				$('#main_image').css("width", Math.round($('.galleria_wrapper').width()) +"px");

				$('ul.gal-gallery').show();

				
			},
			onThumb : function(thumb) { // thumbnail effects goes here
				
				// fetch the thumbnail container
				var _li = thumb.parents('li');
				
				// if thumbnail is active, fade all the way.
				var _fadeTo = _li.is('.active') ? '1' : '0.3';
				
				// fade in the thumbnail when finished loading
				thumb.css({display:'none',opacity:_fadeTo}).fadeIn(1500);
				
				// hover effects
				thumb.hover(
					function() { thumb.fadeTo('fast',1); },
					function() { _li.not('.active').children('img').fadeTo('fast',0.3); } // don't fade out if the parent is active
				)
				thumb.click( // stop slideshow if thumnail is clicked
					function() { $.fn.stopShow(); }
				)
				$('.gal-gallery-container').css("width", Math.round($('ul.gal-gallery').width()));
				
			}
		});
		
		// slideshow functions
		var intrvlID;
		$.fn.startShow = function() {
			$.galleria.next();
			intrvlID = setInterval(function(){$.galleria.next()}, 5000);
		}
		$.fn.stopShow = function() {
			clearInterval(intrvlID);
		}		
		// stop slideshow if image is clicked
		$('#main_image').click(function () {
	        $.fn.stopShow();
	    });
	    
	    
		$.fn.getViewport = function() {
			return [$(window).width(), ($(window).height()-50), $(document).scrollLeft(), $(document).scrollTop() ];
		};
		
		/* not using this here (would resize image based on viewport size if enabled)
		var resizeTimer = null;
		$(window).bind('resize', function() {
		    if (resizeTimer) clearTimeout(resizeTimer);
		    resizeTimer = setTimeout('$.fn.resizeGalImage()', 100);
		});
		*/
		
		$.fn.resizeGalImage = function() { 
			var isIE = ($.browser.msie && parseInt($.browser.version.substr(0,1)) < 8);
			var w = $.fn.getViewport();
			$('#main_image img').removeAttr('style');
			$('#main_image img').removeAttr('width').removeAttr('height');
			$('#main_image img').css("height", Math.round(w[1] - 200) +"px");
			
			if($('#main_image img').width() > (940)) { 
				$('#main_image img').removeAttr('style');
				$('#main_image img').removeAttr('width').removeAttr('height');
				$('#main_image img').css("width", Math.round(940) +"px");
			}
			
			$('#main_image').css("width", Math.round($('.galleria_wrapper').width()) +"px");
		}

			// Menu stuff
			var config = {    
			     sensitivity: 3,    
			     interval: 200,
			     over: openMenu,
			     timeout: 500,
			     out: closeMenu
			};
			$("#menu").hoverIntent( config );
			$("a#menu-btn").bind('click', function(event){openMenu();});
			function closeMenu() {
					$("#menu").animate({top: '-300px'}, {duration: 'slow', easing: 'easeInOutExpo'});
			}
			function openMenu() {
					$("#menu").animate({top: '0'}, {duration: 'slow', easing: 'easeInOutExpo'});
			}

	});
