
(function($){var mouseX=null;var mouseY=null;var opts=null;var multiply=0;$.fn.thumbZoom=function(opt){var defaults={thumbsize:215,zoomsize:330,border:15,top:0,left:-15};opts=$.extend(defaults,opt);multiply=(opts.zoomsize-opts.thumbsize+(2*opts.border))/opts.thumbsize;var config={sensitivity:3,interval:200,over:zoomThumb,timeout:500,out:unzoomThumb};this.hoverIntent(config)};function zoomThumb(e){var img=$(this).parent().find("img");if(img){$(this).bind("mousemove",function(e){thumbDrag(img,e)});var bigsrc=img.attr('class');img.attr('class',img.attr('src'));thumbDrag(img,e);$("<img src='"+bigsrc+"' />").load(function(){img.attr("src",bigsrc);});};}
function unzoomThumb(){var img=$(this).parent().find("img");if(img){img.stop();img.css("height",opts.thumbsize+"px");img.css("width",opts.thumbsize+"px");img.css("top",opts.top+"px");img.css("left",opts.left+"px");img.removeClass("zoomed");var src=img.attr('class');img.attr('class',img.attr('src'));img.attr("src",src);mouseX=null;mouseY=null;$(this).unbind("mousemove");};}
function thumbDrag(img,e){mouseX=e.pageX;mouseY=e.pageY;var offset=zoomOffset($(img).parent().offset());DoZoom(img,offset.top,offset.left);}
function DoZoom(img,top,left){$(img).stop(true,true);if($(img).hasClass("zoomed")){$(img).css("top",top+"px");$(img).css("left",left+"px");$(img).css("width",opts.zoomsize+"px");$(img).css("height",opts.zoomsize+"px");}else{$(img).animate({width:opts.zoomsize+"px",height:opts.zoomsize+"px",top:top+"px",left:left+"px"},500,function(){$(img).addClass("zoomed")});}}
function zoomOffset(offset){var zoomOffset=new Object;var x=mouseX-offset.left-opts.border;var y=mouseY-offset.top-opts.border;var Max=opts.zoomsize-opts.thumbsize;var xThumb=(x*multiply);if(xThumb>Max){xThumb=Max};if(xThumb<0){xThumb=0};xThumb-=opts.left
var yThumb=(y*multiply);if(yThumb>Max){yThumb=Max};if(yThumb<0){yThumb=0};yThumb-=opts.top
zoomOffset.left=-xThumb;zoomOffset.top=-yThumb;return zoomOffset;}})(jQuery);
