jQuery(document).ready(function($){
	
	var zoomed = false;
	var s = new String();
	var zoomer = $('#zoom');
	
	function activateGallery() {
		var min = 111;
		var max = 349;
		var speed = 500;

		var galOffset = $("#gallery-right").offset();
		var oldLeft = galOffset.left;

		zoomer.css("left", oldLeft);
		
		$(".gallery li").each(function(index, el){
			
			if ($(el).find('img').length == 0) { $(el).remove(); } // remove the container li if no image inside
 
			var imagewrap = $(el).children(".imgwrapper");
	 		imagewrap.click(function(){
	
				var elOffset = $(el).offset();	
				var galleryOffset = $("#gallery-right").offset();
				console.log(galleryOffset);		
				if (elOffset.left > galleryOffset.left+max) {
				    //right
				    galOffset.left = 240;
				} else {
				    //left
				    galOffset.left = 0;
				}
				oldLeft = elOffset.left;
				newLeft = elOffset.left-galOffset.left;

				startLeft = (zoomed == false) ? oldLeft : newLeft;

				zoomer.css("left", startLeft);
				zoomer.css("top", elOffset.top);
				zoomer.html($(el).html());
				zoomed = true;

				zoomer.css("visibility","visible");
				toggleHires();
				zoomer.animate( {opacity: 1, height: max, width: max, left: newLeft}, speed, "" );
				return false;
			});
			$(el).children(".imgwrapper a").click(function(){return false;});
		});
	
		zoomer.click(function(){
			zoomer.animate( {opacity: 0, height: min, width: min, left: oldLeft}, speed, "", toggleHires() );
			zoomer.queue(function(){
				zoomer.css("visibility","hidden").dequeue();
			});
			zoomed = false;
			return false;
		});
	}
	
	function toggleHires() {
	    if (zoomed == true) {
	        	s = zoomer.find('a').attr("href") + "";
				zoomImg = zoomer.find('img');
	        	zoomImg.attr("src", s);
				zoomImg.removeAttr('height');
				zoomImg.removeAttr('width');				
	    }
	}
	
	function externalLinks() {
	    $("a").each(function(index, el) {
	        if ($(el).attr("href") && $(el).attr("rel") == "external") {
	            $(el).attr("target") = "_blank";
	            $(el).attr("title") = ($(el).attr("title") != "") ? $(el).attr("title")+" (opens in a new window)" : "opens in a new window";
	            $(el).attr("class") = ($(el).attr("class") != '') ? $(el).attr("class")+' external' : 'external';
	        }
	        /* need to make <a> click override <li> click */
	    });
	}
	
	activateGallery();
	externalLinks();
});
