(function(j){j.fn.fancyzoom=function(o){var m=j("<div>").css({height:"100%",width:"100%",position:"fixed",zIndex:10000,left:0,top:0,cursor:"normal"});function l(s,v){if(v.showoverlay){m.appendTo("body").click(function(){n(v)});if(j.browser.msie&&j.browser.version<7){m.css({position:"absolute",height:j(document).height(),width:j(document).width()})}}var p=v.oImgZoomBox;p.appendTo("body").click(function(){n(v)});pos=s.offset();v=j.extend(v,{imgSrc:s,dimOri:{width:s.outerWidth(),height:s.outerHeight(),left:pos.left,top:pos.top,opacity:1}});if(!s.is("img")){v.dimOri=j.extend(v.dimOri,{width:0,height:0})}p.css({"text-align":"center",border:"0px solid red"}).appendTo("body");var t=p.outerWidth();var u=p.outerHeight();dimBoxTarget=j.extend({},{width:t,height:u,opacity:1},f((t),(u+30)));v.oImgClose.css({left:(dimBoxTarget.left+dimBoxTarget.width-15),top:(dimBoxTarget.top-15)});var r=function(){if(j.fn.shadow&&v.shadow&&!j.browser.msie){j("img:first",p).shadow(v.shadowOpts)}if(v.Speed>0&&!j.browser.msie){v.oImgClose.fadeIn("slow");j("div",p).fadeIn("slow")}else{v.oImgClose.show();j("div",p).show()}};j("div",p).hide();if(v.imgSrc.is("img")){v.imgSrc.css({opacity:0})}var q=j("img:first",p).css({width:"100%",height:"auto"});if(v.Speed>0){p.css(v.dimOri).animate(dimBoxTarget,v.Speed,r)}else{p.css(dimBoxTarget);r()}}function n(t){var p=t.oImgZoomBox;t.oImgClose.remove();j("div",p).remove();var q=function(){p.empty().remove();t.imgSrc.css("opacity",1)};if(t.Speed>0){var u=p.offset();var s=0.15;var r={width:(p.width()*(1+s)),height:(p.height()*(1+s)),left:(u.left-(p.width()*(s/2))),top:(u.top-(p.height()*(s/2)))};p.animate(r,t.Speed*0.2,function(){p.animate(t.dimOri,t.Speed,function(){q()});if(t.showoverlay){m.animate({opacity:0},t.Speed,function(){j(this).remove()})}})}else{q();if(t.showoverlay){m.remove()}}}return this.each(function(){var t=j(this);var s=t.is("img")?t:(j("img:first",t).length==0)?t:j("img:first",t);var q=null;if(t.attr("href")){q=t.attr("href")}var u=j('<img class="jqfancyzoomclosebox">').css({position:"absolute",top:0,left:0,cursor:"pointer"});var r=j.extend({},j.fn.fancyzoom.defaultsOptions,o||{},{dimOri:{},oImgZoomBoxProp:{position:"absolute",left:0,top:0},oImgClose:u});if(s.is("img")){var p=j("<img src='"+r.imgDir+"zoom.png'>").css({position:"absolute",top:0,left:0});s.hover(function(){if(s.css("opacity")!=0){p.appendTo(s.parent()).hide();var x=s.position();var w=parseInt(s.css("margin-left").replace(/px/,""));var v=parseInt(s.css("margin-top").replace(/px/,""));v=(v)?v:0;w=(w)?w:0;p.css({left:(x.left+w-12),top:(x.top+v-12)}).show();if(j.fn.ifixpng){p.ifixpng(r.imgDir+"blank.gif")}}},function(){p.remove()})}if(t.is("img")){q=t.css("cursor","pointer").attr("src");if(r.imgResizeScript){if(q.match(new RegExp("^"+r.imgResizeScript,"g"))){q=q.replace(/.*img=([^&]*).*/gi,"$1")}}}m.css({opacity:r.overlay,background:r.overlayColor});if(!/\.jpg|\.jpeg|\.png|\.gif/i.test(q)){return true}t.click(function(){var J=j("div.jqfancyzoombox");if(J.length>0){if(j("img:first",J).attr("src")!=q){if(a&&a.is(":visible")){d()}}else{return false}}var A=j.extend({},r,o);var G=j("img.jqfancyzoomclosebox");if(G.length>0){var w=j("img:first",J);if(q==w.attr("src")){pos=s.offset();A=j.extend(A,{dimOri:{width:(s.outerWidth()),height:(s.outerHeight()),left:pos.left,top:(pos.top),opacity:0}});n(A);return false}else{G.trigger("click")}}if(A.showoverlay&&m){m.empty().remove().css({opacity:A.overlay})}u.attr("src",A.imgDir+"closebox.png").appendTo("body").hide();if(j.fn.ifixpng){j.ifixpng(A.imgDir+"blank.gif");u.ifixpng(A.imgDir+"blank.gif")}u.unbind("click").click(function(){n(A)});var v=j('<div class="jqfancyzoombox"></div>').css(A.oImgZoomBoxProp);A=j.extend(A,{oImgZoomBox:v});var H=s.attr("title");if(H){var F=j('<div><center><table height=0 border="0" cellspacing=0 cellpadding=0><tr><td></td><td class="fancyTitle">'+H+"</td><td></td></table></center></div>").css({marginTop:10,marginRight:15});var x=F.find("td:first").css({background:"url("+A.imgDir+"zoom-caption-l.png)",width:"13px",height:"26px"});var I=F.find("td:last").css({background:"url("+A.imgDir+"zoom-caption-r.png)",width:"13px",height:"26px"});var C=j(".fancyTitle",F).css({background:"url("+A.imgDir+"zoom-caption-fill.png)",padding:"0px 20px",color:"#FFF","font-size":"14px"});if(j.fn.ifixpng){x.ifixpng(A.imgDir+"blank.gif");I.ifixpng(A.imgDir+"blank.gif");C.ifixpng(A.imgDir+"blank.gif")}F.appendTo(v)}var B=j("<img />").attr("src",q).click(function(){n(A)}).prependTo(v);var D=r.imagezindex;m.css("zIndex",D-1);v.css("zIndex",D);u.css("zIndex",(D+10));var z=new Image();z.src=q;var y=function(){if(g){g=false}else{if(b(z.src)==b(j("img:first",v).attr("src"))){E(A.autoresize);l(s,A);k()}}};var E=function(R){if(R){var N=j("<div></div>").css({position:"absolute",top:0,left:0,opacity:0,border:"0px solid red"});var M=false;B.appendTo(N);N.appendTo("body");imWidth=B.width();imHeight=B.height();maxWidth=j(window).width()*0.9;maxHeight=j(window).height()-100;if(maxHeight<imHeight){M=true;B.height(maxHeight);imWidth=(imWidth*maxHeight)/imHeight;B.width(imWidth);if(maxWidth<imWidth){B.width(maxWidth);B.height(imHeight*maxWidth/imWidth)}}else{if(maxWidth<imWidth){M=true;B.width(maxWidth);B.height(imHeight*maxWidth/imWidth)}}if(M&&A.imgResizeScript){var Q=B.width();var O=B.height();var P=Q;var L=new Array(1440,1280,1024,800,640,480,360);for(i=0;i<L.length;i++){if(Q>L[i]){P=L[i];break}}B.width(P);B.height(parseInt(O*P/Q));var K="img="+encodeURI(B.attr("src"));K+="&width="+B.width();K+="&height="+B.height();B.attr("src",A.imgResizeScript+"?"+K)}N.remove()}B.prependTo(v)};if(z.complete){E(A.autoresize);l(s,A)}else{c(A);z.onload=function(){y()}}return false})})};j.fn.fancyzoom.defaultsOptions={overlayColor:"#000",overlay:0.6,imagezindex:10000,showoverlay:true,Speed:400,shadow:true,shadowOpts:{color:"#000",offset:4,opacity:0.2},imgDir:"/ressources/",imgResizeScript:null,autoresize:true};function f(l,o){var n=(j(window).width()-l)/2+j(window).scrollLeft();var m=(j(window).height()-o)/2+j(window).scrollTop();n=(n<0)?0:n;m=(m<0)?15:m;return{left:n,top:m}}var a=null;var g=false;var e=null;function c(l){if(!a){a=j("<div></div>").css({width:50,height:50,position:"absolute",background:"transparent",opacity:8/10,color:"#FFF",padding:"5px","font-size":"10px"})}a.css(f(50,50)).html('<img src="'+l.imgDir+'blank.gif" />').click(function(){d()}).appendTo("body").show();e=setTimeout(function(){h(l)},400)}function d(){g=true;k()}function k(){a.hide().remove();if(e){clearTimeout(e);e=null}}function h(p){if(a&&!a.is(":visible")){e=null;return}var l=j("img",a);if(!l.attr("src")||/blank\.gif/.test(l.attr("src"))){strImgSrc=p.imgDir+"zoom-spin-1.png"}else{tab=l.attr("src").split(/[- .]+/);iImg=parseInt(tab[2]);iImg=(iImg<12)?(iImg+1):1;strImgSrc=tab[0]+"-"+tab[1]+"-"+iImg+"."+tab[3]}var n=new Image();n.src=strImgSrc;var m=function(){a&&a.css(f(50,50));l.attr("src",strImgSrc);e=setTimeout(h,100)};if(n.complete){m()}else{n.onload=m}}function b(m){if(!m){return false}var l=m.split("/");return((l.length<1)?m:l[(l.length-1)])}})(jQuery);
