﻿jQuery.fn.imageZoom=function(b){var a=jQuery.extend({speed:200,dontFadeIn:1,hideClicked:1,imageMargin:30,className:"jquery-image-zoom",loading:"Loading..."},b);a.doubleSpeed=a.speed/4;return this.click(function(h){var d=jQuery(h.target),b=d.is("a")?d:d.parents("a");b=b&&b.is("a")&&b.attr("href").search(/(.*)\.(jpg|jpeg|gif|png|bmp|tif|tiff)$/gi)!=-1?b:false;var c=b&&b.find("img").length?b.find("img"):false;if(b){b.oldText=b.text();b.setLoadingImg=function(){if(c)c.css({opacity:"0.5"});else b.text(a.loading)};b.setNotLoadingImg=function(){if(c)c.css({opacity:"1"});else b.text(b.oldText)};var e=b.attr("href");if(jQuery("div."+a.className+' img[src="'+e+'"]').length)return false;var g=function(){b.setNotLoadingImg();var i=c?c:b,o=c?a.hideClicked:0,n=i.offset(),j={width:i.outerWidth(),height:i.outerHeight(),left:n.left,top:n.top},g={width:jQuery(window).width(),height:jQuery(window).height()},f=jQuery('<div><img src="'+e+'" alt="" /></div>').css({position:"absolute",left:"30px",top:"0",visibility:"hidden"}).appendTo(document.body),d={width:f.outerWidth(),height:f.outerHeight()};if(d.width>g.width-a.imageMargin*2){var m=g.width-a.imageMargin*2;d.height=m/d.width*d.height;d.width=m}if(d.height>g.height-a.imageMargin*2){var l=g.height-a.imageMargin*2;d.width=l/d.height*d.width;d.height=l}d.left=(g.width-d.width)/2+jQuery(window).scrollLeft();d.top=(g.height-d.height)/2+jQuery(window).scrollTop();var h=jQuery('<a href="#">Close</a>').appendTo(f).hide();f.zIndex=700;if(o)b.css("visibility","hidden");f.css("visibility","visible");f.addClass(a.className).css(j).animate(d,a.speed,function(){h.fadeIn(a.doubleSpeed)});var k=function(){h.fadeOut(a.doubleSpeed,function(){f.animate(j,a.speed,function(){b.css("visibility","visible");f.remove()})});return false};f.click(k);h.click(k)},f=new Image;f.src=e;if(f.complete)g();else{b.setLoadingImg();f.onload=g}return false}})}
