var xPreviewOffset = 10;
var yPreviewOffset = 30;
var imgLoading = false;
var numImages = 15;
var loadCount = 0;

$(document).ready(function() {
	
	galleryPreview();
	
});

function galleryPreloadImages() {
	
	var img = new Image();
	
	img.src = "../images/qc_loader.gif";
	
	$(img).bind('error load onreadystatechange', downloadImages);
	
}

function downloadImages() {

	$("a.preview").each(function(e){
		
		imgLoading = true;
		
		var img = new Image();
		
		$(img).bind('error load onreadystatechange', onImgComplete);
		
		var id = this.id;
		this.t = this.title;
		var imgChild = '#' + id + ' > img';
		var imgSrc = $(imgChild).attr("alt");
		
		img.src = imgSrc;
			
	});
}

function onImgComplete(){
	
	++loadCount;
	
	if (loadCount == numImages)
		imgLoading = false;
}


function galleryPreview() {

	
	$("a.preview").hover(function(e){
		
		this.t = this.title;
		this.title = "";	
		var c = (this.t != "") ? "<strong class='gallery-preview'>" + this.t + "</strong>" : "";
		var id = this.id;
								 
		$("body").append("<p id='preview'>" + c + "</p>");
		
		var pw = $("#preview").width();
		
		if(e.pageX <= $(window).width()/2){//flip right
			
			yPreviewOffset = 10;
			xPreviewOffset = 40;
		}
		else{ //flip left
			
			yPreviewOffset = -pw - 20;
			xPreviewOffset = 40;	
		}
		
		$("#preview")
		.css("top",(e.pageY - xPreviewOffset) + "px")
		.css("left",(e.pageX + yPreviewOffset) + "px")
		.fadeIn("fast");	
		
    },
	function(){
		this.title = this.t;	
		$("#preview").remove();
    });	
	
	$("a.preview").mousemove(function(e){
		
		var pw = $("#preview").width();
		
		if(e.pageX <= $(window).width()/2){ //flip right
			
			yPreviewOffset = 10;
			xPreviewOffset = 40;
			
		}
		else{//flip left
			
			yPreviewOffset = -pw - 20;
			xPreviewOffset = 40;

		}
		
		
		$("#preview")
		.css("top",(e.pageY - xPreviewOffset) + "px")
		.css("left",(e.pageX + yPreviewOffset) + "px");
				
	});			
}
	
