ns("Magnifier3");Magnifier3.IMAGE_LOADER="/img/image-loader.gif";Magnifier3.AUTO_CENTER=true;Magnifier3.AUTO_CENTER_DELAY=1000;Magnifier3.USE_SIMPLE_IMAGE_PRELOADER=false;Magnifier3.Win=function(a){this.modal=true;this.width=200;this.height=200;this.top=0;this.left=0;this.header_height=10;this.toolbar_height=0;this.footer_height=35;this.hide_on_esc=true;this.mask=null;this.shown=false;this.selector=null;this.addEvents({show:true,hide:true});Magnifier3.Win.superclass.constructor.call(this,a);if(this.hide_on_esc){this._initHideOnEsc()}};utils.extend(Magnifier3.Win,utils.Observable,{_initHideOnEsc:function(){$(document).keydown($.proxy(this.onKeyDown,this))},show:function(){if(this.shown){return}if(this.modal){this.getMask().show()}this.getEl().show();this.setFrame(this.x,this.y,this.width,this.height);this.shown=true;this.onShow()},hide:function(){if(!this.shown){return}if(this.modal){this.getMask().hide()}this.getEl().hide();this.shown=false;this.onHide()},setPosition:function(a,c){var b=new Offset(a,c);this.x=b.left;this.y=b.top;this.getEl().css({left:b.left,top:b.top})},setSize:function(c,a){var b=new Size(c,a);this.width=b.width;this.height=b.height;this.getEl().width(b.width);this.getEl().height(b.height);this.updateSizes()},getFooterWidth:function(){return this.width},getHeaderWidth:function(){return this.width},getToolBarWidth:function(){return this.width},getBodyHeight:function(){return this.height-this.footer_height-this.header_height-this.toolbar_height},updateBodySize:function(){this.getBodyEl().width(this.width).height(this.getBodyHeight())},updateFooterSize:function(){this.getFooterEl().width(this.getFooterWidth())},updateHeaderSize:function(){this.getHeaderEl().width(this.getHeaderWidth())},updateToolBarSize:function(){this.getToolBarEl().width(this.getToolBarWidth())},updateSizes:function(){this.updateHeaderSize();this.updateToolBarSize();this.updateBodySize();this.updateFooterSize()},setFrame:function(b,e,c,a){var d=new Frame(b,e,c,a);this.setPosition(d.offset);this.setSize(d.size)},getMask:function(){if(!this.mask){this.mask=new utils.Effects.Mask({listeners:{click:this.onMaskClick,scope:this}})}return this.mask},center:function(){var a=utils.Effects.Frame.getViewCenter();this.setPosition(a.left-this.width/2,a.top-this.height/2)},setTitle:function(a){this.getTitleEl().html(a)},_createWin:function(){var a=$('<div class="magnify_win"></div>').appendTo("body");a.css("position","absolute");this._createContainer(a);return a},_createContainer:function(b){var a=$('<div class="container"></div>').appendTo(b).css({width:"100%",height:"100%"});if(this.header_height>0){this._createHeader(a)}if(this.toolbar_height>0){this._createToolBar(a)}this._createBody(a);if(this.footer_height>0){this._createFooter(a)}this._createButtons(a);return a},_createBody:function(a){return $('<div class="body"></div>').appendTo(a)},_createHeader:function(a){return $('<div class="header"></div>').appendTo(a).css({position:"relative",height:this.header_height})},_createToolBar:function(a){return $('<div class="toolbar"></div>').appendTo(a).css({position:"relative",height:this.toolbar_height})},_createFooter:function(a){return $('<div class="footer"><div class="title"></div></div>').appendTo(a).css({position:"absolute",bottom:0,height:this.footer_height})},_createButtons:function(b){var a=$('<div class="buttons"></div>').appendTo(b);this._createCloseButton(a);return a},_createCloseButton:function(a){return $('<div class="button close" title="Закрыть">&nbsp;</div>').appendTo(a).click(this.onClose.createDelegate(this))},getContainerEl:function(){return $(".container",this.getEl())},getBodyEl:function(){return $(".body",this.getEl())},getFooterEl:function(){return $(".footer",this.getEl())},getHeaderEl:function(){return $(".header",this.getEl())},getToolBarEl:function(){return $(".toolbar",this.getEl())},getTitleEl:function(){return $(".title",this.getFooterEl())},getEl:function(){if(!this.selector){this.selector=this._createWin().getIdSelector()}return $(this.selector)},onMaskClick:function(){this.hide()},onShow:function(){this.fireEvent("show",[this])},onHide:function(){this.fireEvent("hide",[this])},onClose:function(){this.hide()},onKeyDown:function(a){if(a.keyCode==27){this.hide()}}});Magnifier3.MagnifyWin=function(a){this.image_loader_src=Magnifier3.IMAGE_LOADER;this.image_margin=10;this.min_width=200;this.min_height=200;this.view_padding=10;this.auto_center=Magnifier3.AUTO_CENTER;this.auto_center_delay=Magnifier3.AUTO_CENTER_DELAY;this.loupe_factor=1.5;this.preloader=null;this.loupe=null;this.auto_center_timer=null;this.title="";this.image_src="";this.image_size=new Size();this.x_factor=0;this.y_factor=0;this.first_load=true;Magnifier3.MagnifyWin.superclass.constructor.call(this,a);if(this.auto_center){this._initAutoCenter()}};utils.extend(Magnifier3.MagnifyWin,Magnifier3.Win,{_initAutoCenter:function(){$(window).resize(this.onUpdateViewFrame.createDelegate(this)).scroll(this.onUpdateViewFrame.createDelegate(this))},showImage:function(b,a){this.title=a?a:"";this.stopAutoCenterTimer();this.unbindLoupe();this.show();this.center();if(this.image_src!=b){this.showLoaderLayout();this.getPreloader().load(b)}else{this.showContainerLayout();this.maximize()}},hide:function(){this.stopAutoCenterTimer();this.getEl().stop();this.getLoupe().unbind();Magnifier3.MagnifyWin.superclass.hide.call(this)},getPreloader:function(){if(!this.preloader){this.preloader=new utils.Effects.ImagePreloader({listeners:{load:this.onLoadImage,scope:this}})}return this.preloader},showLoaderLayout:function(){if(this.first_load){this.getContainerEl().hide()}this.getLoaderEl().width(this.width).height(this.getBodyHeight()).css("top",this.header_height+this.toolbar_height).show()},showContainerLayout:function(){this.getContainerEl().show();this.getLoaderEl().hide()},getLoaderEl:function(){return $(".loader",this.getEl())},_createWin:function(){var a=Magnifier3.MagnifyWin.superclass._createWin.call(this);this._createLoaderLayout(a);return a},_createLoaderLayout:function(b){var a=$('<div class="loader"><table width="100%" height="100%"><tr><td style="text-align: center; vertical-align: middle;"><img src="'+this.image_loader_src+'" alt="Загружается..." title="Загружается..."/></td></tr></table></div>').appendTo(b).css({position:"absolute",top:0,left:0,display:"none"});$("img",a).click(this.onCancel.createDelegate(this));return a},getMaximizedWindowFrame:function(){var b=new Size(this.image_margin*2,this.image_margin*2+this.footer_height+this.header_height+this.toolbar_height);var a=utils.Effects.Frame.scaleRectangleIntoRectangle(this.image_size,utils.Effects.Frame.getViewSize().sub(this.view_padding*2,this.view_padding*2).sub(b));var e=a.add(b);if(e.width<this.min_width){e.width=this.min_width}if(e.height<this.min_height){e.height=this.min_height}var c=utils.Effects.Frame.getViewCenter();var d=new Offset(c.left-e.width/2,c.top-e.height/2);return new Frame(d.floor(),e.floor())},getFooterWidth:function(){return this.width},getHeaderWidth:function(){return this.width},getToolBarWidth:function(){return this.width},updateBodySize:function(){Magnifier3.MagnifyWin.superclass.updateBodySize.call(this);this.updateImageSize()},updateFooterSize:function(){this.getTitleEl().width(this.getFooterWidth()-this.image_margin*2)},updateHeaderSize:function(){},updateToolBarSize:function(){},updateImageSize:function(){var b=new Size(this.width-this.image_margin*2,this.height-this.image_margin*2-this.footer_height-this.header_height-this.toolbar_height);var a=utils.Effects.Frame.scaleRectangleIntoRectangle(this.image_size,b).floor();var c=new Offset(b.width/2-a.width/2+this.image_margin,b.height/2-a.height/2+this.image_margin).floor();this.x_factor=this.image_size.width/a.width;this.y_factor=this.image_size.height/a.height;this.getImageEl().css({top:c.top,left:c.left}).width(a.width).height(a.height)},setImage:function(d,c,a){this.getPreloader().cancel();this.showContainerLayout();this.image_src=d;this.image_size=new Size(c,a);var b=$('<img src="'+d+'" alt=""/>').css({display:"block",position:"relative",top:this.image_margin,left:this.image_margin,width:1,height:1}).click(this.onImageClick.createDelegate(this));this.getBodyEl().empty().append(b);this.updateImageSize()},maximize:function(){this.unbindLoupe();if(this.first_load||!this.isMaximized()){this.getContainerEl().hide();this.show();var a=this.getMaximizedWindowFrame();this.getEl().addClass("animate").animate({width:a.size.width,height:a.size.height,top:a.offset.top,left:a.offset.left},"swing",(function(){this.setFrame(a.offset,a.size);this.getContainerEl().fadeIn("fast");this.bindLoupeIf();this.getEl().removeClass("animate")}).createDelegate(this))}else{this.bindLoupeIf()}},isMaximized:function(){var d=this.getMaximizedWindowFrame();var b=this.getEl();var c=b.offset();var a=new Frame(c.left,c.top,b.width(),b.height()).floor();return d.isEqual(a)},bindLoupeIf:function(){if(this.x_factor>this.loupe_factor||this.y_factor>this.loupe_factor){this.bindLoupe()}},bindLoupe:function(){this.getLoupe().bind(this.getImageEl())},unbindLoupe:function(){this.getLoupe().unbind()},startAutoCenterTimer:function(){this.stopAutoCenterTimer();this.auto_center_timer=setTimeout(this.onAutoCenter.createDelegate(this),this.auto_center_delay)},stopAutoCenterTimer:function(){if(this.auto_center_timer!==null){this.auto_center_timer=clearTimeout(this.auto_center_timer)}this.auto_center_timer=null},getLoupe:function(){if(!this.loupe){this.loupe=new Loupe({listeners:{click:this.onImageClick,scope:this}})}return this.loupe},getImageEl:function(){return $("img",this.getBodyEl())},cancel:function(a){this.getPreloader().cancel();this.showContainerLayout();if(this.image_src==""||a===true){this.hide()}},onLoadImage:function(a){this.setImage(a.getSrc(),a.getSize());this.setTitle(this.title);this.getLoaderEl().hide();this.maximize();this.first_load=false},onUpdateViewFrame:function(){if(this.shown&&!this.getPreloader().isLoading()){this.startAutoCenterTimer()}},onAutoCenter:function(){this.maximize()},onImageClick:function(){this.hide()},onCancel:function(){this.cancel()},onMaskClick:function(){this.cancel(true)},onClose:function(){this.cancel(true)}});Magnifier3.MultiImageMagnifyWin=function(a){this.slider_height=50;this.slider_image_height=50;this.slider_image_width=70;this.slider_image_margin=5;this.use_simple_image_preloader=Magnifier3.USE_SIMPLE_IMAGE_PRELOADER;this.number=false;this.images=[];this.slider=null;this.simple_preloaded=false;a=$.extend({footer_height:85},a);Magnifier3.MultiImageMagnifyWin.superclass.constructor.call(this,a)};utils.extend(Magnifier3.MultiImageMagnifyWin,Magnifier3.MagnifyWin,{simplePreload:function(){for(var a=this.images.length-1;a>=0;a--){utils.Effects.SimpleImagePreloader.instance().add(this.images[a][1],a==0)}},show:function(){if(this.use_simple_image_preloader&&!this.simple_preloaded){this.simplePreload();this.simple_preloaded=true}Magnifier3.MultiImageMagnifyWin.superclass.show.call(this)},_createFooter:function(b){var a=Magnifier3.MultiImageMagnifyWin.superclass._createFooter.call(this,b);this._createSlider(a);return a},_createHeader:function(b){var a=Magnifier3.MultiImageMagnifyWin.superclass._createHeader.call(this,b);this._createControls(a);return a},_createSlider:function(a){this.slider=new MiniSlider({render_to:a,images:this.getPreviews(),image_width:this.slider_image_width,image_height:this.slider_image_height,image_margin:this.slider_image_margin,height:this.slider_height,number:this.number,listeners:{select:this.onSelectImage,scope:this}})},_createControls:function(a){$('<a class="button prev" title="Предыдущее">&nbsp;</a>').appendTo(a).click($.proxy(this.onPrev,this));$('<a class="button next" title="Следующее">&nbsp;</a>').appendTo(a).click($.proxy(this.onNext,this))},getPreviews:function(){var c=[];for(var b=0,a=this.images.length;b<a;b++){c.push([this.images[b][0],this.images[b][2]])}return c},updateFooterSize:function(){Magnifier3.MultiImageMagnifyWin.superclass.updateFooterSize.call(this);this.updateSliderSize()},updateHeaderSize:function(){Magnifier3.MultiImageMagnifyWin.superclass.updateHeaderSize.call(this);this.updateControlsPosition()},updateSliderSize:function(){this.slider.setWidth(this.getFooterWidth())},updateControlsPosition:function(){var a=this.getBodyHeight()/2-this.getPrevButton().height()/2;var b=this.getBodyHeight()/2-this.getNextButton().height()/2;this.getPrevButton().css({top:a+this.header_height+this.toolbar_height});this.getNextButton().css({top:b+this.header_height+this.toolbar_height})},showImageByNum:function(a){this.showImage(this.images[a][1],this.images[a][2])},setImage:function(c,b,a){Magnifier3.MultiImageMagnifyWin.superclass.setImage.call(this,c,b,a);if(this.getImageNum()!==false){this.slider.select(this.getImageNum())}else{num=0}this.syncControls();this.slider.centerSelected()},syncControls:function(){var a=this.getImageNum()||0;if(a==0){this.disablePrevButton()}else{this.enablePrevButton()}if(a<this.images.length-1){this.enableNextButton()}else{this.disableNextButton()}},disableNextButton:function(){this.getNextButton().addClass("disabled")},disablePrevButton:function(){this.getPrevButton().addClass("disabled")},enableNextButton:function(){this.getNextButton().removeClass("disabled")},enablePrevButton:function(){this.getPrevButton().removeClass("disabled")},getImageNum:function(){return this.getImageNumBySrc(this.image_src)},getImageNumBySrc:function(c){for(var b=0,a=this.images.length;b<a;b++){if(this.images[b][1]==c){return b}}return false},getPrevButton:function(){return $(".button.prev",this.getHeaderEl())},getNextButton:function(){return $(".button.next",this.getHeaderEl())},onSelectImage:function(b,a){if(this.getImageNum()!==a){this.showImage(this.images[a][1],this.images[a][2])}return false},onImageClick:function(){var a=this.getImageNum();if(a===false){a=0}if(a<this.images.length-1){this.onNext()}else{this.showImageByNum(0)}},onNext:function(){var a=this.getImageNum()||0;if(a<this.images.length-1){this.showImageByNum(a+1)}},onPrev:function(){var a=this.getImageNum();if(a){this.showImageByNum(a-1)}}});Magnifier3.Manager=function(){this.windows={}};Magnifier3.Manager.prototype={get:function(a){return this.windows[a]},set:function(b,a){this.windows[b]=a}};Magnifier3.Manager._instance=null;Magnifier3.Manager.instance=function(){if(!Magnifier3.Manager._instance){Magnifier3.Manager._instance=new Magnifier3.Manager()}return Magnifier3.Manager._instance};function enlarge(c,f){var b=$(c);var f=f||b.generateId().attr("id");var d=Magnifier3.Manager.instance().get(f);if(!d){d=new Magnifier3.MagnifyWin();Magnifier3.Manager.instance().set(f,d)}var a=$("img",b);var e="";if(a.length){e=a.attr("title")||a.attr("alt")}else{e=b.attr("title")}d.showImage(b.attr("href"),e);return false}$.fn.magnifier=function(a){return this.each(function(){if(this.src.indexOf(a)>=0){var b=$(this);var c=this.src.replace(a,"");b.wrap('<a class="magnifier" onclick="return enlarge(this)" href="'+c+'"></a>')}})};MiniSlider=function(a){this.render_to="";this.width=100;this.auto_init=true;this.image_margin=5;this.image_width=40;this.image_height=40;this.image_border=3;this.height=40;this.selection_width=2;this.selection_height=2;this.number=false;this.loop=true;this.count_zones=10;this.duration={min:150,max:2000};this.images=[];this.selector="";this.slider_pos=0;this.selected=false;this.auto_scroll=false;this.prev_zone=0;this.stopped=true;this.addEvents({select:true});MiniSlider.superclass.constructor.call(this,a);if(this.auto_init){this.init()}};utils.extend(MiniSlider,utils.Observable,{init:function(){this._create(this.render_to);this.render_to=null;this._initEvents()},_initEvents:function(){this.getSliderEl().click(this.onSliderClick.createDelegate(this)).mousemove($.proxy(this.onMouseMove,this)).mouseleave($.proxy(this.onMouseLeave,this))},_create:function(a){var b=$('<div class="mini_slider"><table cellspacing="0"><tr><td class="slider_cell"></td></tr></table></div>').appendTo($(a)).css({position:"relative",height:this.height});this._createSlider($("td.slider_cell",b));this.selector=b.getIdSelector()},_createSlider:function(a){var d=$('<div class="slider"><table cellspacing="0" class="images"><tr></tr></table></div>').appendTo(a).css({height:this.height,position:"relative",overflow:"hidden"});$("table.images",d).css("position","absolute");var e=$("tr",d);for(var c=0,b=this.images.length;c<b;c++){this._createSliderImage(e,this.images[c][0],this.images[c][1],c);if(c<b-1){this._createImageDivider(e)}}return d},_createSliderImage:function(a,e,d,c){var b=$('<div class="image">'+(this.number?c+1:"&nbsp;")+"</div>").css({background:'url("'+e+'") no-repeat center center',width:this.image_width-this.image_border*2,height:this.image_height-this.image_border*2}).attr("title",d).data("num",c);$("<td></td>").append(b).appendTo(a)},_createImageDivider:function(a){$('<td class="divider">&nbsp;</td>').appendTo(a).css({width:this.image_margin})},startAnimation:function(b){if(!this.stopped&&b==this.prev_zone){return}this.stopAnimation();this.prev_zone=b;var c=b>0?this.getImagesTable().position().left+this.getSlideDelta():-this.getImagesTable().position().left;var d=c/this.getImagePosWidth();var a=this.duration.max-(Math.abs(b)-1)*(this.duration.max-this.duration.min)/(this.count_zones-1)*2;var e=d*a;this.stopped=false;this.getImagesTable().animate({left:(b<0?"+=":"-=")+c},e,"linear")},stopAnimation:function(){this.stopped=true;this.getImagesTable().stop()},findZone:function(a){var e=a-this.getCenter();var d=Math.abs(e);var b=this.getZoneWidth()/2;if(d<=b){return 0}var c=Math.floor((d-b)/(b*2))+1;return e<0?-c:c},setWidth:function(a){this.width=a;this.getEl().width(this.getSliderWidth()).css("padding-left",(a-this.getSliderWidth())/2);this.getSliderEl().width(this.getSliderWidth());this.getImagesTable().width(this.getImagesTableWidth());this.updateSliderPos();this.adjustAutoScroll()},select:function(a){this.selected=a;setTimeout(this._setupSelection.createDelegate(this,[a]),150)},_setupSelection:function(a){$(".selected",this.getSelectedImageBlock()).remove();$('<div class="selected">&nbsp;</div>').appendTo(this.getImageBlock(a))},next:function(){if(this.hasNextImages()){this.select(this.getNextPos())}},prev:function(){if(this.hasPrevImages()){this.select(this.getPrevButton())}},slideToNext:function(a){if(!this.hasPrevImagesToSlide()){return}if(a===undefined){a=1}this._slide(a)},slideToPrev:function(a){if(!this.hasPrevImagesToSlide()){return}if(a===undefined){a=1}this._slide(-a)},_slide:function(a){this.slider_pos+=a;this.stopAnimation();this.getImagesTable().animate({left:-this.getImagePosWidth()*this.slider_pos})},adjustAutoScroll:function(){this.auto_scroll=this.isSliderOverloaded()},isSliderOverloaded:function(){return this.getSlideDelta()>0},hidePrevButton:function(){this.getPrevButton().hide()},hideNextButton:function(){this.getNextButton().hide()},showPrevButton:function(){this.getPrevButton().show()},showNextButton:function(){this.getNextButton().show()},disablePrevButton:function(){this.getPrevButton().addClass("disabled")},disableNextButton:function(){this.getNextButton().addClass("disabled")},enablePrevButton:function(){this.getPrevButton().removeClass("disabled")},enableNextButton:function(){this.getNextButton().removeClass("disabled")},countMaxVisibleImages:function(){return this._countImagesInVisibleArea(this.getSliderWidth())},_countImagesInVisibleArea:function(a){return(a-this.image_width)/this.getImagePosWidth()+1},hasPrevImagesToSlide:function(){return this.slider_pos>0},hasNextImagesToSlide:function(){return this.slider_pos+this.countMaxVisibleImages()<this.images.length},hasPrevImages:function(){return this.loop||this.selected>0},hasNextImages:function(){return this.loop||this.selected<this.images.length-1},getNextPos:function(){var a=this.selected+1;if(a>=this.images.length){if(this.loop){a=0}else{a=false}}return a},getPrevPos:function(){var a=this.selected-1;if(a<0){if(this.loop){a=this.images.length-1}else{a=false}}return a},updateSliderPos:function(){if(this.countMaxVisibleImages()>=this.images.length&&this.slider_pos>0){this.slideToPrev(this.slider_pos)}else{this.centerSelected()}},centerSelected:function(){if(this.selected!==false){this.centerImage(this.selected)}},centerImage:function(c){var b=this.countMaxVisibleImages();if(b>=this.images.length){return}var a=Math.ceil(c-b/2);if(a<0){a=0}if(a+b>=this.images.length){a=this.images.length-b}if(this.slider_pos!=a){this._slide(a-this.slider_pos)}},getSliderWidth:function(){return this._countImagesInVisibleArea(this.width)<=this.images.length?this.width:this.getImagesTableWidth()},getImagesTableWidth:function(){return this.getImagePosWidth()*this.images.length-this.image_margin},getSlideDelta:function(){return this.getImagesTableWidth()-this.getSliderWidth()},getZoneWidth:function(){return this.getSliderWidth()/this.count_zones},getCenter:function(){return this.getSliderWidth()/2},getImagePosWidth:function(){return this.image_width+this.image_margin},getImageBlock:function(a){return $("div.image:eq("+a+")",this.getSliderEl())},getImageBlocks:function(){return $("div.image",this.getSliderEl())},getSelectedImageBlock:function(){return $("div.image:has(.selected)",this.getSliderEl())},getSliderEl:function(){return $(".slider",this.getEl())},getImagesTable:function(){return $("table.images",this.getSliderEl())},getPrevButton:function(){return $(".prev",this.getEl())},getNextButton:function(){return $(".next",this.getEl())},getEl:function(){return $(this.selector)},onSliderClick:function(c){var a=$(c.target);if(a.hasClass("image")){var b=a.data("num");if(this.fireEvent("select",[this,b])){this.select(b)}}},onMouseMove:function(b){if(!this.auto_scroll){return}var a=this.findZone(b.pageX-this.getSliderEl().offset().left);if(a!=0){this.startAnimation(a)}else{this.stopAnimation()}},onMouseLeave:function(){if(!this.auto_scroll){return}this.stopAnimation()}});Loupe=function(a){this.width=250;this.height=250;this.selector=false;this.active=false;this.image_loader=null;this.$image=null;this.image_frame=new Frame();this.x_factor=0;this.y_factor=0;this.cursor_offset=new Offset();this.events_inited=false;this.addEvents({click:true});Loupe.superclass.constructor.call(this,a)};utils.extend(Loupe,utils.Observable,{bind:function(a){if(this.isBinded()){this.unbind()}if(!this.events_inited){this.initEvents()}this.$image=$(a);this.getImageLoader().load(this.$image.attr("src"))},active:function(){if(this.isBinded){this.active=true}},unactive:function(){if(this.isBinded()){this.getEl().hide();this.active=false}},isActive:function(){return this.active},unbind:function(){if(!this.isBinded()){return}this.unactive();this.$image=null},isBinded:function(){return !!this.$image},moveTo:function(a,f){if(!this.active){return}if(!this.image_frame.testPoint(a,f)){this.getEl().hide();return}var c=-(a-this.image_frame.offset.left)*this.x_factor+this.width/2;var b=-(f-this.image_frame.offset.top)*this.y_factor+this.height/2;var e=a-this.width/2,d=f-this.height/2;this.getEl().show().offset({top:d,left:e}).css("background-position",Math.round(c)+"px "+Math.round(b)+"px")},setSize:function(b,a){this.width=b;this.height=a;if(this.active){this.getEl().width(b).height(a)}},_createLoupe:function(){return $('<div class="loupe_magnifier"></div>').appendTo("body").css({position:"absolute",display:"none"})},initEvents:function(){$("body").mousemove($.proxy(this.onMouseMove,this));this.getEl().click($.proxy(this.onClickLoupe,this));this.events_inited=true},getImageLoader:function(){if(!this.image_loader){this.image_loader=new utils.Effects.ImagePreloader({listeners:{load:this.onLoadImage,scope:this}})}return this.image_loader},getEl:function(){if(!this.selector){this.selector=this._createLoupe().getIdSelector()}return $(this.selector)},onMouseMove:function(a){this.cursor_offset.left=a.pageX;this.cursor_offset.top=a.pageY;if(this.active){this.moveTo(a.pageX,a.pageY)}},onLoadImage:function(a){var c=a.getSize();this.x_factor=c.width/this.$image.width();this.y_factor=c.height/this.$image.height();this.getEl().width(this.width).height(this.height).css({"background-image":"url("+a.getSrc()+")","background-repeat":"no-repeat"});var b=this.$image.offset();this.image_frame=new Frame(b.left,b.top,this.$image.width(),this.$image.height());this.active=true;this.moveTo(this.cursor_offset.left,this.cursor_offset.top)},onClickLoupe:function(){this.fireEvent("click",[this])}});
