var leftOffset;
var topOffset;
var startWidth;
var startHeight;

$.fn.zoomShow=function(){

		var theBigger = $(this).attr('target');
		var offsets = $(this).offset();
		var parent = $(this).parent('div');
		var parentOff = $(parent).offset();
		var parentTop = parentOff.top;
		leftOffset = offsets.left;
		topOffset = offsets.top;
		startWidth = $(this).width();
		startHeight = $(this).height();
		
		var toInsert = '<div class="start" style="width:'+startWidth+'px;height:'+startHeight+'px;left:'+leftOffset+'px;top:'+topOffset+'px;"><img src="img/loading_icon.gif" id="loading"/></div>';
		$('body').append(toInsert);
		var theStart = $('.start');
		
		$(theStart).append('<img src="'+theBigger+'" class="invisible_load"');
		
		$('.invisible_load').load(function(){
			var finalHeight = $('.invisible_load').height();
			var finalWidth = $('.invisible_load').width();
			var halfHeight = 0-(finalHeight/2);
			var halfWidth = 0-(finalWidth/2);
			var leftMove = ($(document).width()/2)+halfWidth; 
			var topMove = 50 + $(window).scrollTop();
			
			$('#loading').hide();
			$('.invisible_load').css({'width':startWidth+'px','height':startHeight+'px'});
			$('.invisible_load').show();
			var theStart = $('.start');
			
			$('.invisible_load').animate({
				width: finalWidth,
				height: finalHeight,
				top:'0px'
			},900);
			
			$(theStart).animate({
				left: leftMove,
				top: topMove,
				width: finalWidth,
				height: finalHeight
			},900,function(){
				$('.invisible_load').fadeIn(400,function(){
					var clicky = $('.close_box');
					var clickyHeight= -14 - ($(clicky).height());
					$(theStart).append(clicky);
					$(clicky).css('top',clickyHeight);
					$(clicky).fadeIn(500);
					var viewWidth = $(document).width();
					var viewHeight = $(document).height();
					var viewTop = $(window).scrollTop();
					$('.veil').css({'height':viewHeight,'width':viewWidth,'top':'0px'}).show();
				}
				);
			}
			);
			
			
		});

};	


$.fn.zoomHide=function(callback){
		
			$(this).hide();
			$('.veil').hide();
			$('body').append(this);
			var theStart = $('.start');
			$('.invisible_load').animate({
				width: startWidth,
				height: startHeight
			},550);
			
			$(theStart).animate({
				left: leftOffset,
				top: topOffset,
				width: startWidth,
				height: startHeight
			},550,function(){
				$(theStart).remove();
				if (callback != 'none'){$(callback).zoomShow();}
			});
	
};	
