document.write("<link rel=\"stylesheet\" href=\"/inc/enhanced.css\" type=\"text/css\" media=\"all\" />");
google.setOnLoadCallback(function() {
	$(document).ready(function() {
		newWindowLinks();
		defaultText();
		clickable();	
		home();	
		gallery();
		assignmentGalleries();
		autoSlideshow();
	});	
});

/* Autoslideshow handle */
var asHandle;

/* Load Top Image */
function loadTopImage(index) {
	var i = $("#topImage img").eq(0);
	i.attr("alt",topImages[index][1]);
	i.fadeOut(200,function(){
		newImage = new Image();
		newImage.onload = function() {
			i.attr("src",newImage.src).fadeIn();
			if(topImages[index][1] && topImages[index][1] != " ~ ") {
				$(".info").show();				
			} else {
				$(".info").hide();	
			}
		}
		newImage.src = topImages[index][0];
	})
}

/* Top Image nav */
var topImages		= new Array();
var currTopImage 	= -1;
var topImageLast	= 0;
function topImageNext() {
	resetInfoOverLay()
	next = currTopImage+1;
	if(next>topImageLast) {
		next=0;
	}
	loadTopImage(next);
	currTopImage = next;
}
function topImagePrev() {
	resetInfoOverLay()
	next = currTopImage-1;
	if(next<0) {
		next=topImageLast;
	}
	loadTopImage(next);
	currTopImage = next;
}
function topImageButtons(images) {	
	topImages 		= images;
	topImageLast	= topImages.length-1;
	if(topImageLast>0) {
		$("#topImageButtons").prepend('<a href="#" class="prev">prev</a><a href="#" class="next">next</a>');
	}	
	$("#topImageButtons .next").click(function(){
		topImageNext();
		return false;
	})
	$("#topImageButtons .prev").click(function(){
		topImagePrev();
		return false;
	})
	$("#topImageButtons .prev").click(function(){
		return false;
	})
	infoButton();
	topImageNext();
}
function infoButton() {
	$("#topImage #topImageButtons .info").click(function() {
		$("#topImage .overlay").fadeOut(500,function() {
			if($("#infoOverlay").size()>0) {
				resetInfoOverLay()
			} else {
				var text = $("#topImage img").attr("alt").toString().replace(" ~ ", "</td></tr><tr><th>Credit:</th><td>");
				$(this).after('<div class="overlay" id="infoOverlay" style="display:none"><div class="wrp"><table><tr><th>Description:</th><td>'+text+'</td></tr></table></div></div>')
				$("#infoOverlay").fadeIn()
			}
			
		});
		return false
	})
}
function resetInfoOverLay() {
	$("#infoOverlay").fadeOut(500,function() {
		$(this).remove();
		$("#topImage .overlay").fadeIn()
	})
}

/* Home link */
function home() {
	$("#logo").css({cursor:"pointer"}).click(function() {
		window.location = "/";
	});
}

/* Load Gallery Image */
function loadGalleryImage(src,info) {
	$("#infoOverlay").remove()
	var i = $("#galleryImage img");
	i.fadeOut(200,function(){
		newImage = new Image();
		newImage.onload = function() {
			i.attr("src",newImage.src).fadeIn();		
			if(info!=undefined && info !=" ~ ") {
				$(".info").show();
				i.attr("alt",info)
			} else {
				$(".info").hide();	
			}
		}
		newImage.src = src;
	})
}

function galleryInfoButton() {
	$("#galleryImage #topImageButtons .info").click(function() {	
		if($("#infoOverlay").size()>0) {
			$("#infoOverlay").fadeOut(500,function() { $(this).remove() })
		} else {
			var text = $("#galleryImage img").attr("alt").toString().replace(" ~ ", "</td></tr><tr><th>Credit:</th><td>");
			$("#topImageButtons").after('<div class="overlay" id="infoOverlay" style="display:none"><div class="wrp"><table><tr><th>Description:</th><td>'+text+'</td></tr></table></div></div>')
			$("#infoOverlay").fadeIn()
		}
		return false
	})
}

/* Gallery */
function gallery() {
	loadGalleryImage($("#galleryImage img").attr("src"));
	galleryInfoButton();	
	var thumbs 		= $("#galleryThumbs ul");	
	var thumbCount 	= $("#galleryThumbs li").size();
	var totalWidth	= thumbCount*95;
	var clipWidth	= 940;
	var scrollStart	= 0;
	
	// Max scroll
	var scrollEnd	= -(totalWidth-clipWidth-10);
	thumbs.css({width:totalWidth+"px"})
	
	if(thumbCount>10){
		$("#slider").slider({
			step: 1, 
			animate: true,
		   	slide: function(event, ui) { 
				var slideto = Math.round(scrollEnd/100 * ui.value);
				thumbs.css({"margin-left":slideto+"px"})
			}
		});	
	}
	
	$("#galleryThumbs li a").click(function(){
		loadGalleryImage($(this).attr("href"),$("img",this).eq(0).attr("alt"));
		return false;
	})

}

/* Un-obfuscate email */
function fnE(inarr,text) {	
	inarr = inarr.split(",");
	var out = "";
	for(i=inarr.length-1;i>=0;i--) {
		out += inarr[i];
	}
	if(text=="" || text == undefined) {
		text = out;
	}
	document.write('<a href="mailto:'+out+'">'+text+'</a>');	
}

/**	
 * Target new windows
 */
function newWindowLinks(){
	$('a.pop').unbind('click').click(function(){
		window.open($(this).attr('href'));
		return false;
	});
}


/* Remove default value and replace */
function defaultText() {
	$(".defaultText").unbind("focus,blur").focus(function () {		
		if ($(this).val() == $(this)[0].defaultValue) {
        	$(this).val("");
        }
	 }).blur(function() {
        if ($(this).val() == "") {
        	$(this).val($(this)[0].defaultValue);
     	}
	 });
}

/* Make a whole box clickable */
function clickable() {
	$(".clickable:has(a)").css({"cursor":"pointer"}).unbind("click").click(function() {
		var link = $("a",this).eq(0).attr("href");
		window.location = link;
	}).hover(function(){
		$(this).addClass("hover");
	},function(){
		$(this).removeClass("hover");
	})
}


/* Assignments galleries  */
function assignmentGalleries() {
	$(".assignmentsGallery a").click(function(){
		var parentwrp 	= $(this).closest(".assignmentsGallery");
		
		var targ 		= $("img",parentwrp).eq(0);
		var newimghref 	= $(this).attr("href");
		var text		= $("img",this).attr("alt").toString().replace(" ~ ", "</strong>");
		targ.fadeOut(200,function(){
			newImage = new Image();
			newImage.onload = function() {
				targ.attr("src",newimghref).fadeIn();
				$(".credits",parentwrp).html("<strong>"+text);
			}
			newImage.src = newimghref;
		})	 
		return false;
	})
}

/* Auto slideshow */

function autoSlideshow() {
	if(topImages.length>1) {
		asHandle = setInterval("topImageNext()",6000);
	}	
}
