(function($){$.fn.jqzoom=function(G){var H={zoomType:"standard",zoomWidth:200,zoomHeight:200,xOffset:10,yOffset:0,position:"right",lens:true,lensReset:false,imageOpacity:0.3,title:true,alwaysOn:false,showEffect:"show",hideEffect:"hide",fadeinSpeed:"fast",fadeoutSpeed:"slow",preloadImages:false,showPreload:true,preloadText:"Loading zoom",preloadPosition:"center"};G=G||{};$.extend(H,G);return this.each(function(){var a=$(this);var d=a.attr("title");$(a).removeAttr("title");$(a).css("outline-style","none");$(a).css("text-decoration","none");var f=$(a).attr("rel");var g=$("img",this);var j=g.attr("title");g.removeAttr("title");var k=new Smallimage(g);var l={};var m=0;var n=0;var p=null;p=new Loader;var q=trim(d).length>0?d:trim(j).length>0?j:null;var r=new zoomTitle;var s=new Largeimage(a[0].href);var t=new Lens;var u={};var v=false;var y={};var z=null;var A=false;var B={};var C=0;var D=false;var E=false;var F=false;k.loadimage();$(this).click(function(){return false;});$(this).click(function(e){B.x=e.pageX;B.y=e.pageY;k.setpos();activate();},function(){});$(this).hover(function(e){},function(){k.setpos();deactivate();});if(H.alwaysOn){setTimeout(function(){activate();},150);}
function activate(){if(!A){k.findborder();A=true;j=g.attr("title");g.removeAttr("title");d=a.attr("title");$(a).removeAttr("title");s=new Largeimage(a[0].href);if(!v||$.browser.safari){s.loadimage();}else{if(H.zoomType!="innerzoom"){z=new Stage;z.activate();}t=new Lens;t.activate();}a[0].blur();return false;}}
function deactivate(){if(H.zoomType=="reverse"&&!H.alwaysOn){g.css({opacity:1});}if(!H.alwaysOn){A=false;v=false;$(t.node).unbind("mousemove");t.remove();if($("div.jqZoomWindow").length>0){z.remove();}if($("div.jqZoomTitle").length>0){r.remove();}g.attr("title",j);a.attr("title",d);$().unbind();a.unbind("mousemove");C=0;if(jQuery(".zoom_ieframe").length>0){jQuery(".zoom_ieframe").remove();}}else{if(H.lensReset){switch(H.zoomType){case"innerzoom":s.setcenter();break;default:t.center();break;}}}if(H.alwaysOn){activate();}}
function Smallimage(c){this.node=c[0];this.loadimage=function(){this.node.src=c[0].src;};this.findborder=function(){var a="";a=$(g).css("border-top-width");m="";var b="";b=$(g).css("border-left-width");n="";if(a){for(i=0;i<3;i++){var x=[];x=a.substr(i,1);if(isNaN(x)==false){m=m+""+a.substr(i,1);}else{break;}}}if(b){for(i=0;i<3;i++){if(!isNaN(b.substr(i,1))){n=n+b.substr(i,1);}else{break;}}}m=m.length>0?eval(m):0;n=n.length>0?eval(n):0;};this.node.onload=function(){a.css({cursor:"crosshair",display:"block"});if(a.css("position")!="absolute"&&a.parent().css("position")){a.css({cursor:"crosshair",position:"relative",display:"block"});}if(a.parent().css("position")!="absolute"){a.parent().css("position","relative");}else{}if($.browser.safari||$.browser.opera){$(g).css({position:"absolute",top:"0px",left:"0px"});}l.w=$(this).width();l.h=$(this).height();l.pos=$(this).offset();l.pos.l=$(this).offset().left;l.pos.t=$(this).offset().top;l.pos.r=l.w+l.pos.l;l.pos.b=l.h+l.pos.t;a.height(l.h);a.width(l.w);if(H.preloadImages){k.setpos();s.loadimage();}};return this;}
Smallimage.prototype.setpos=function(){l.pos=$(g).offset();l.pos.l=$(g).offset().left;l.pos.t=$(g).offset().top;l.pos.r=l.w+l.pos.l;l.pos.b=l.h+l.pos.t;};function Lens(){this.node=document.createElement("div");$(this.node).addClass("jqZoomPup");this.node.onerror=function(){$(t.node).remove();t=new Lens;t.activate();};this.loadlens=function(){switch(H.zoomType){case"reverse":this.image=new Image;this.image.src=k.node.src;this.node.appendChild(this.image);$(this.node).css({opacity:1});break;case"innerzoom":this.image=new Image;this.image.src=s.node.src;this.node.appendChild(this.image);$(this.node).css({opacity:1});break;default:break;}switch(H.zoomType){case"innerzoom":u.w=l.w;u.h=l.h;break;default:u.w=H.zoomWidth/y.x;u.h=H.zoomHeight/y.y;break;}$(this.node).css({width:u.w+"px",height:u.h+"px",position:"absolute",display:"none",borderWidth:"1px"});a.append(this.node);};return this;}
Lens.prototype.activate=function(){this.loadlens();switch(H.zoomType){case"reverse":g.css({opacity:H.imageOpacity});H.alwaysOn?t.center():t.setposition(null);a.bind("mousemove",function(e){B.x=e.pageX;B.y=e.pageY;t.setposition(e);});break;case"innerzoom":$(this.node).css({top:0,left:0});if(H.title){r.loadtitle();}s.setcenter();a.bind("mousemove",function(e){B.x=e.pageX;B.y=e.pageY;s.setinner(e);});break;default:H.alwaysOn?t.center():t.setposition(null);$(a).bind("mousemove",function(e){B.x=e.pageX;B.y=e.pageY;t.setposition(e);});break;}return this;};Lens.prototype.setposition=function(e){if(e){B.x=e.pageX;B.y=e.pageY;}if(C==0){var b=l.w/2-u.w/2;var c=l.h/2-u.h/2;$("div.jqZoomPup").show();if(H.lens){this.node.style.visibility="visible";}else{this.node.style.visibility="hidden";$("div.jqZoomPup").hide();}C=1;}else{var b=B.x-l.pos.l-u.w/2;var c=B.y-l.pos.t-u.h/2;}if(overleft()){b=0+n;}else if(overright()){if($.browser.msie&&$.browser.version<7){b=l.w-u.w+n-1;}else{b=l.w-u.w+n-1;}}if(overtop()){c=0+m;}else if(overbottom()){if($.browser.msie&&$.browser.version<7){c=l.h-u.h+m-1;}else{c=l.h-u.h-1+m;}}b=parseInt(b);c=parseInt(c);$("div.jqZoomPup",a).css({top:c,left:b});if(H.zoomType=="reverse"){$("div.jqZoomPup img",a).css({position:"absolute",top:-(c-m+1),left:-(b-n+1)});}this.node.style.left=b+"px";this.node.style.top=c+"px";s.setposition();function overleft(){return B.x-(u.w+2)/2-n<l.pos.l;}
function overright(){return B.x+(u.w+2)/2>l.pos.r+n;}
function overtop(){return B.y-(u.h+2)/2-m<l.pos.t;}
function overbottom(){return B.y+(u.h+2)/2>l.pos.b+m;}
return this;};Lens.prototype.center=function(){$("div.jqZoomPup",a).css("display","none");var b=l.w/2-u.w/2;var c=l.h/2-u.h/2;this.node.style.left=b+"px";this.node.style.top=c+"px";$("div.jqZoomPup",a).css({top:c,left:b});if(H.zoomType=="reverse"){$("div.jqZoomPup img",a).css({position:"absolute",top:-(c-m+1),left:-(b-n+1)});}s.setposition();if($.browser.msie){$("div.jqZoomPup",a).show();}else{setTimeout(function(){$("div.jqZoomPup").fadeIn("fast");},10);}};Lens.prototype.getoffset=function(){var o={};o.left=parseInt(this.node.style.left);o.top=parseInt(this.node.style.top);return o;};Lens.prototype.remove=function(){if(H.zoomType=="innerzoom"){$("div.jqZoomPup",a).fadeOut("fast",function(){$(this).remove();});}else{$("div.jqZoomPup",a).remove();}};Lens.prototype.findborder=function(){var a="";a=$("div.jqZoomPup").css("borderTop");lensbtop="";var b="";b=$("div.jqZoomPup").css("borderLeft");lensbleft="";if($.browser.msie){var c=a.split(" ");a=c[1];var c=b.split(" ");b=c[1];}if(a){for(i=0;i<3;i++){var x=[];x=a.substr(i,1);if(isNaN(x)==false){lensbtop=lensbtop+""+a.substr(i,1);}else{break;}}}if(b){for(i=0;i<3;i++){if(!isNaN(b.substr(i,1))){lensbleft=lensbleft+b.substr(i,1);}else{break;}}}lensbtop=lensbtop.length>0?eval(lensbtop):0;lensbleft=lensbleft.length>0?eval(lensbleft):0;};function Largeimage(a){this.url=a;this.node=new Image;this.loadimage=function(){if(!this.node){this.node=new Image;}this.node.style.position="absolute";this.node.style.display="none";this.node.style.left="-5000px";this.node.style.top="10px";p=new Loader;if(H.showPreload&&!D){p.show();D=true;}document.body.appendChild(this.node);this.node.src=this.url;};this.node.onload=function(){this.style.display="block";var w=Math.round($(this).width());var h=Math.round($(this).height());this.style.display="none";y.x=w/l.w;y.y=h/l.h;if($("div.preload").length>0){$("div.preload").remove();}v=true;if(H.zoomType!="innerzoom"&&A){z=new Stage;z.activate();}if(A){t=new Lens;t.activate();}if($("div.preload").length>0){$("div.preload").remove();}};return this;}
Largeimage.prototype.setposition=function(){this.node.style.left=Math.ceil(-y.x*parseInt(t.getoffset().left)+n)+"px";this.node.style.top=Math.ceil(-y.y*parseInt(t.getoffset().top)+m)+"px";};Largeimage.prototype.setinner=function(e){this.node.style.left=Math.ceil(-y.x*Math.abs(e.pageX-l.pos.l))+"px";this.node.style.top=Math.ceil(-y.y*Math.abs(e.pageY-l.pos.t))+"px";$("div.jqZoomPup img",a).css({position:"absolute",top:this.node.style.top,left:this.node.style.left});};Largeimage.prototype.setcenter=function(){this.node.style.left=Math.ceil(-y.x*Math.abs(l.w/2))+"px";this.node.style.top=Math.ceil(-y.y*Math.abs(l.h/2))+"px";$("div.jqZoomPup img",a).css({position:"absolute",top:this.node.style.top,left:this.node.style.left});};function Stage(){var a=jQuery(g).offset().left;var b=jQuery(g).offset().top;this.node=document.createElement("div");$(this.node).addClass("jqZoomWindow");$(this.node).css({position:"absolute",width:Math.round(H.zoomWidth)+"px",height:Math.round(H.zoomHeight)+"px",display:"none",zIndex:10000,overflow:"hidden"});switch(H.position){case"right":a=a+$(g).width()+Math.abs(H.xOffset)+H.zoomWidth<$(document).width()?a+$(g).width()+Math.abs(H.xOffset):a-H.zoomWidth-10;topwindow=b+H.yOffset+H.zoomHeight;b=topwindow<$(document).height()&&topwindow>0?b+H.yOffset:b;break;case"left":a=l.pos.l-Math.abs(H.xOffset)-H.zoomWidth>0?l.pos.l-Math.abs(H.xOffset)-H.zoomWidth:l.pos.l+l.w+10;topwindow=l.pos.t+H.yOffset+H.zoomHeight;b=topwindow<$(document).height()&&topwindow>0?l.pos.t+H.yOffset:l.pos.t;break;case"top":b=l.pos.t-Math.abs(H.yOffset)-H.zoomHeight>0?l.pos.t-Math.abs(H.yOffset)-H.zoomHeight:l.pos.t+l.h+10;leftwindow=l.pos.l+H.xOffset+H.zoomWidth;a=leftwindow<$(document).width()&&leftwindow>0?l.pos.l+H.xOffset:l.pos.l;break;case"bottom":b=l.pos.b+Math.abs(H.yOffset)+H.zoomHeight<$(document).height()?l.pos.b+Math.abs(H.yOffset):l.pos.t-H.zoomHeight-10;leftwindow=l.pos.l+H.xOffset+H.zoomWidth;a=leftwindow<$(document).width()&&leftwindow>0?l.pos.l+H.xOffset:l.pos.l;break;default:a=l.pos.l+l.w+H.xOffset+H.zoomWidth<$(document).width()?l.pos.l+l.w+Math.abs(H.xOffset):l.pos.l-H.zoomWidth-Math.abs(H.xOffset);b=l.pos.b+Math.abs(H.yOffset)+H.zoomHeight<$(document).height()?l.pos.b+Math.abs(H.yOffset):l.pos.t-H.zoomHeight-Math.abs(H.yOffset);break;}this.node.style.left=a+"px";this.node.style.top=b+"px";return this;}
Stage.prototype.activate=function(){if(!this.node.firstChild){this.node.appendChild(s.node);}if(H.title){r.loadtitle();}document.body.appendChild(this.node);switch(H.showEffect){case"show":$(this.node).show();break;case"fadein":$(this.node).fadeIn(H.fadeinSpeed);break;default:$(this.node).show();break;}$(this.node).show();if($.browser.msie&&$.browser.version<7){this.ieframe=$("<iframe class=\"zoom_ieframe\" name=\"content\" frameborder=\"0\"  src=\"#\"  style=\"background-color: transparent\" bgcolor=\"transparent\"></iframe>").css({position:"absolute",left:this.node.style.left,top:this.node.style.top,zIndex:99,width:H.zoomWidth+2,height:H.zoomHeight}).insertBefore(this.node);}s.node.style.display="block";};Stage.prototype.remove=function(){switch(H.hideEffect){case"hide":$(".jqZoomWindow").remove();break;case"fadeout":$(".jqZoomWindow").fadeOut(H.fadeoutSpeed);break;default:$(".jqZoomWindow").remove();break;}};function zoomTitle(){this.node=jQuery("<div />").addClass("jqZoomTitle").html(""+q+"");this.loadtitle=function(){if(H.zoomType=="innerzoom"){$(this.node).css({position:"absolute",top:l.pos.b+3,left:l.pos.l+1,width:l.w}).appendTo("body");}else{$(this.node).appendTo(z.node);}};}
zoomTitle.prototype.remove=function(){$(".jqZoomTitle").remove();};function Loader(){this.node=document.createElement("div");$(this.node).addClass("preload");$(this.node).html(H.preloadText);$(this.node).appendTo(a).css("visibility","hidden");this.show=function(){switch(H.preloadPosition){case"center":loadertop=(l.h-$(this.node).height())/2;loaderleft=(l.w-$(this.node).width())/2;$(this.node).css({top:loadertop,left:loaderleft});break;default:var a=this.getoffset();break;}$(this.node).css({position:"absolute",visibility:"visible"});};return this;}
Loader.prototype.getoffset=function(){var o=null;o=$("div.preload").offset();return o;};});};}(jQuery));function trim(a){while(a.substring(0,1)==" "){a=a.substring(1,a.length);}
while(a.substring(a.length-1,a.length)==" "){a=a.substring(0,a.length-1);}
return a;}