var qrEditorItems=[],QRCodeEnabled=!1;function initQREditor(t,e,a){switch(t){case"tuning":var i=getQRcodeFineTuningCtx(e);i.fadeIn(),jQuery(".tuning-container div[class^=col-]",i).append('
'),jQuery("canvas.lowres-canvas",i).initQRTuningEditor()}}function appendQRCode(t,e,a){var i=getPrintAreaTabCtxByAttribute([{attributeType:"id",attributeValue:"image-"+t,dataRelation:"="}]),r=i.data("area-width"),n=(i.data("area-height"),r/2),o=getPreviewPrintAreaCtxByDataAttribute([{dataAttribute:"area-id",attributeValue:t,dataRelation:"="}]),s=o.css("width"),d=o.css("height"),c=parseFloat(d.replace(/[^-\d\.]/g,""))/-2,l=o.data("image-shift"),u=void 0!==l&&!1!==l?parseFloat(l):0,g=parseFloat(s.replace(/[^-\d\.]/g,""))/-2+u,h="",p=o.closest(".view").attr("data-view-code"),v=jQuery('div[data-view-code="'+p+'"]',getPreviewCtx("imprint"));getPreviewPrintAreaCtxByDataAttribute([{dataAttribute:"area-id",attributeValue:t,dataRelation:"!="}],v).each(function(t,e){var a=jQuery(e);if(collision(o,a)){var i=a.attr("data-area-id");getPreviewPrintAreaCtxByDataAttribute([{dataAttribute:"area-id",attributeValue:i,dataRelation:"="}]).each(function(t,e){getPreviewPrintAreaContentCtx(jQuery(e)).remove()})}}),h+='
',h+='

',h+="
",o.html(h)}function qrTuningUpdateCallback(t,e,a){appendImage(t,e,"qrcode"),displayLoading(!1,null),jQuery("#saved-configurations-container").fadeOut()}function updateQRCodeStatus(t){QRCodeEnabled=t,updateConfigurationRecap()}jQuery(document).ready(function(t){var e=getImprintMainCtx(),a=!1;t("body").hasClass("desktop")?(e.on("mouseenter",".qrcodes-grid .item",function(){t(this).addClass("active")}),t(document).on("mouseleave",".qrcodes-grid .item",function(){t(this).removeClass("active")})):e.on("click",".qrcodes-grid .item",function(){t(".qrcodes-grid .item").removeClass("active"),a?a=!1:t(this).addClass("active"),t(".actions .btn",t(this)).focusout()}),e.on("click",".qrcodes-grid .item.active .btnDownload",function(){var e=t(this).closest(".item"),i=t("img",e).attr("src"),r=i.substr(i.lastIndexOf("/")+1),n=(r.substr(r.lastIndexOf(".")+1),new XMLHttpRequest);e.removeClass("active"),a=!0,n.open("GET",i,!0),n.responseType="blob",n.onload=function(t){download(n.response,r,r)},n.send()}),e.on("click",".qrcodes-grid .item.active .btnUpdate",function(){var e=t(this),i=e.closest(".item"),r=getPrintAreaParentTabCtx(e),n=t("img",i).attr("src"),o=getQRcodeSelectionCtx(r);i.removeClass("active"),a=!0,displayLoading(!0,null),o.fadeOut(400,function(){initQREditor("tuning",r,n),updateQRCodeStatus(!0)})})}),function(t){t.fn.initQRTuningEditor=function(){return this.each(function(e,a){var i,r=getPrintAreaParentTabCtx(t(this)),n=r.data("area-id"),o=getQRcodeFineTuningCtx(r),s=t("canvas",o).parent(),d=parseFloat(r.attr("data-area-height")),c=parseFloat(r.attr("data-area-width")),l={id:r.attr("data-area-id"),width:c,height:d,left:t("canvas",o).width()/2-c/2,top:t("canvas",o).height()/2-d/2},u=t("").addClass("print-area");r.closest(".imprint-panel.in");t("canvas",o).height()>d?(i=Math.round(t("canvas",o).height()),l.scale=(i-60)/l.height,l.left=t("canvas",o).width()/2-c*l.scale/2,l.top=i/2-d*l.scale/2):(i=Math.round(l.height)+60,l.top=i/2-d/2,l.scale=1);var g,h,p=new fabric.Canvas(t("canvas.lowres-canvas",o).attr("id")),v=minerva_configurator_vars.hi_image_height/minerva_configurator_vars.low_image_height,m=new fabric.Canvas(t("canvas.hires-canvas",o).attr("id"));u.css("width",l.width*l.scale),u.css("height",l.height*l.scale),u.css("left",l.left),u.css("top",l.top),p.setDimensions({width:s.width(),height:i}),qrEditorItems[n]={canvas:p,printArea:l},t(".tuning-container .canvas-container div.print-area",o).remove(),t(".tuning-container .canvas-container",o).append(u),qrEditorItems[n].tuningCanvas=p,qrEditorItems[n].tuningPrintArea=l,fabric.Image.fromURL(t(".editing-picture",o).attr("src"),function(e){e.set({borderColor:fabricBorderColor,borderScaleFactor:1,cornerColor:fabricCornerColor,cornerSize:8,lockRotation:!0,transparentCorners:!1,lockScalingX:!0,lockScalingY:!0});var a=e.width,i=e.height,s=parseFloat(p.width),u=parseFloat(p.height),f=parseFloat(l.width),b=parseFloat(l.height),q=0;a>i?(q=-90,g=Math.min(b/a,f/i)*l.scale):(q=0,g=Math.min(f/a,b/i)*l.scale),e.scale(g),e.set({left:s/2,top:u/2,originX:"center",originY:"center"}),e.rotate(q),e.setControlsVisibility({bl:!0,br:!0,mb:!1,ml:!1,mr:!1,mt:!1,tl:!0,tr:!0}),p.add(e),qrEditorItems[n].tuningPicture=e,m.setDimensions({width:p.width*v,height:p.height*v}),qrEditorItems[n].hiresCanvas=m,fabric.Image.fromURL(t(".editing-picture",o).attr("src"),function(e){e.scale(g*v),e.set({left:parseFloat(m.width)/2,top:parseFloat(m.height)/2,originX:"center",originY:"center"}),e.rotate(q),m.add(e),h=e,paHiLeft=m.width/2-c*v*l.scale/2,paHiTop=m.height/2-d*v*l.scale/2,qrEditorItems[n].hiresPicture=h;var a=t("").addClass("print-area").addClass("high");a.css("width",l.width*v*l.scale),a.css("height",l.height*v*l.scale),a.css("left",paHiLeft),a.css("top",paHiTop),t(".hires-tuning-container .canvas-container div.print-area.high",o).remove(),t(".hires-tuning-container .canvas-container",o).append(a),qrEditorItems[n].printAreaHi={left:paHiLeft,top:paHiTop,width:l.width*v*l.scale,height:l.height*v*l.scale},h.rotate(qrEditorItems[n].tuningPicture.angle),h.left=qrEditorItems[n].tuningPicture.left*v,h.top=qrEditorItems[n].tuningPicture.top*v,h.scaleX=qrEditorItems[n].tuningPicture.scaleX*v,h.scaleY=qrEditorItems[n].tuningPicture.scaleY*v,m.renderAll();var i=m.toDataURL({left:qrEditorItems[n].printAreaHi.left,top:qrEditorItems[n].printAreaHi.top,width:qrEditorItems[n].printAreaHi.width,height:qrEditorItems[n].printAreaHi.height});if(1!=l.scale){var s=1/l.scale,u=new Image;u.src=i,u.onload=function(){var t=new fabric.Canvas(jQuery("")[0]);t.setDimensions({width:u.width*s,height:u.height*s});var e=new fabric.Image(u,{left:0,top:0});e.scale(s),t.add(e),t.renderAll(),i=t.toDataURL({left:0,top:0,width:t.width,height:t.height}),appendImage(r.attr("data-area-id"),i,"qrcode")}}else appendImage(r.attr("data-area-id"),i,"qrcode")}),displayLoading(!1,null)}),t(".btnUpdateQRcode",o).off("click"),t(".btnUpdateQRcode",o).on("click",function(){displayLoading(!0,"");var e=getPrintAreaParentTabCtx(t(this)),a=e.data("area-id");qrEditorItems[a].tuningCanvas.discardActiveObject(),h.rotate(qrEditorItems[a].tuningPicture.angle),h.left=qrEditorItems[a].tuningPicture.left*v,h.top=qrEditorItems[a].tuningPicture.top*v,h.scaleX=qrEditorItems[a].tuningPicture.scaleX*v,h.scaleY=qrEditorItems[a].tuningPicture.scaleY*v,m.renderAll();var i=m.toDataURL({left:qrEditorItems[a].printAreaHi.left,top:qrEditorItems[a].printAreaHi.top,width:qrEditorItems[a].printAreaHi.width,height:qrEditorItems[a].printAreaHi.height});if(1!=l.scale){var r=1/l.scale,n=new Image;n.src=i,n.onload=function(){var t=new fabric.Canvas(jQuery("")[0]);t.setDimensions({width:n.width*r,height:n.height*r});var a=new fabric.Image(n,{left:0,top:0});a.scale(r),t.add(a),t.renderAll(),i=t.toDataURL({left:0,top:0,width:t.width,height:t.height}),qrTuningUpdateCallback(e.attr("data-area-id"),i,e.closest(".imprint-panel").attr("data-component-id"))}}else qrTuningUpdateCallback(e.attr("data-area-id"),i,e.closest(".imprint-panel").attr("data-component-id"));updateQRCodeStatus(!0)}),t(".btnCancelQRcode",o).off("click"),t(".btnCancelQRcode",o).on("click",function(){var e=getPrintAreaParentTabCtx(t(this)).data("area-id");t(".canvas-container",t(".tuning-container",o)).before(t('')),qrEditorItems[e].tuningCanvas.clear(),qrEditorItems[e].tuningPicture=null,t(".canvas-container",t(".hires-tuning-container",o)).before(t('')),m.clear(),t("img",t(".canvas-container",o).parent()).remove(),t(".canvas-container",o).remove(),o.fadeOut(400,function(){removeImage(e,"qrcode"),t(".qrcode-selection",r).fadeIn()}),updateQRCodeStatus(!1)})})}}(jQuery),jQuery("document").ready(function(t){t(".qrcode-fine-tuning .btnDown").on("click",function(){var e=getPrintAreaParentTabCtx(t(this)).data("area-id");qrEditorItems[e].tuningPicture.top=qrEditorItems[e].tuningPicture.top+=1,qrEditorItems[e].tuningCanvas.renderAll()}),t(".qrcode-fine-tuning .btnUp").on("click",function(){var e=getPrintAreaParentTabCtx(t(this)).data("area-id");qrEditorItems[e].tuningPicture.top=qrEditorItems[e].tuningPicture.top-=1,qrEditorItems[e].tuningCanvas.renderAll()}),t(".qrcode-fine-tuning .btnLeft").on("click",function(){var e=getPrintAreaParentTabCtx(t(this)).data("area-id");qrEditorItems[e].tuningPicture.left=qrEditorItems[e].tuningPicture.left-=1,qrEditorItems[e].tuningCanvas.renderAll()}),t(".qrcode-fine-tuning .btnRight").on("click",function(){var e=getPrintAreaParentTabCtx(t(this)).data("area-id");qrEditorItems[e].tuningPicture.left=qrEditorItems[e].tuningPicture.left+=1,qrEditorItems[e].tuningCanvas.renderAll()})});