/*!
* jQuery Image Overlay v1.3.2
* http://www.ferretarmy.com/files/jQuery/ImageOverlay/ImageOverlay.html
*
* Copyright (c) 2009-2010 Jon Neal
* Dual licensed under the MIT and GPL licenses, using the same terms as jQuery.
* Refer to http://docs.jquery.com/License
*
* Date: 2010-08-13 (Fri, 13 August 2010)
* Revision: 1.3.2
* This version remedies some of the long-term image height/width issues in the 1.3.x branch
*/
(function($){
	$.fn.ImageOverlay=function(options){var opts=$.extend({},
	$.fn.ImageOverlay.defaults,options);
	return this.each(
		function(){
			var thisOpts=$.metadata?$.extend({},opts,$(this).metadata()):opts;
			var imageContainer=$('a',this);
			$(imageContainer).each(
				function(){
					var hrefOpts=$.metadata?$.extend({},thisOpts,$(this).metadata()):thisOpts;
					$('img',this).each(
						function(){
							if($(this).attr('src')!==""&&(this.complete||this.readyState===4))
								MakeOverlay($(this).parent(),hrefOpts);
							else $(this).load(MakeOverlay($(this).parent(),hrefOpts))
						}
					)
				}
			);
			//$(this).after('<p style="clear: both; height: 0;">&nbsp;</p>')
		}
	);
	function MakeOverlay(imageContainer,hrefOpts){
		var image=new Image();
		image.src=$('img',imageContainer).attr('src');
		imageContainer.css({width:image.width,height:image.height,borderColor:hrefOpts.border_color});
		$('img',imageContainer).attr({title:''});
		var imageHeight=$('img',imageContainer).height();
		var captionHeight=$('.caption',imageContainer).height();
		var useBottomOrigin=(hrefOpts.overlay_origin=='top'?false:true);
		if(useBottomOrigin){
			$('.caption',imageContainer).css(
				{top:(hrefOpts.always_show_overlay?(imageHeight-captionHeight)+'px':imageHeight+'px'),
				backgroundColor:hrefOpts.overlay_color,color:hrefOpts.overlay_text_color}
			);
			if(!hrefOpts.always_show_overlay){
				if(hrefOpts.animate){
					imageContainer.hover(function(){$('.caption',imageContainer).stop().animate({top:(imageHeight-captionHeight)+'px'},{queue:false,duration:hrefOpts.overlay_speed})},
					function(){
						if(hrefOpts.overlay_speed_out!=null)$('.caption',imageContainer).stop().animate({top:imageHeight+'px'},{queue:false,duration:hrefOpts.overlay_speed_out});
						else $('.caption',imageContainer).stop().animate({top:imageHeight+'px'},{queue:false,duration:hrefOpts.overlay_speed})})
				}else{
					imageContainer.hover(function(){$('.caption',imageContainer).css('top',(imageHeight-captionHeight)+'px')},
					function(){$('.caption',imageContainer).css('top',imageHeight+'px')})}
			}
		}else{
			$('.caption',imageContainer).css({top:(hrefOpts.always_show_overlay?'0px':-captionHeight+'px'), backgroundColor:hrefOpts.overlay_color,color:hrefOpts.overlay_text_color});
			if(!hrefOpts.always_show_overlay){
				if(hrefOpts.animate){$(imageContainer).hover(
					function(){$('.caption',imageContainer).stop().animate({top:'0px'},
						{queue:false,duration:hrefOpts.overlay_speed})},
						function(){
							if(hrefOpts.overlay_speed_out!=null)$('.caption',imageContainer).stop().animate({top:-captionHeight+'px'},{queue:false,duration:hrefOpts.overlay_speed_out});
							else $('.caption',imageContainer).stop().animate({top:-captionHeight+'px'},{queue:false,duration:hrefOpts.overlay_speed})}
				)}else{
					$(imageContainer).hover(function(){$('.caption',imageContainer).css('top','0px')},
					function(){$('.caption',imageContainer).css('top',-captionHeight+'px')})
				}
			}
		}
	}
	};
	$.fn.ImageOverlay.defaults={
		always_show_overlay:false,
		animate:true,
		border_color:'#666',
		overlay_color:'#000',
		overlay_origin:'bottom',
		overlay_speed:'normal',
		overlay_text_color:'#666'
	}
})(jQuery);
