mirror of
https://github.com/10h30/ultimatemember.git
synced 2026-07-13 19:56:27 +09:00
b6aff77568
- minified js files and changed enqueue to classic WP logic with DEBUG_SCRIPTS constant;
1 line
17 KiB
JavaScript
1 line
17 KiB
JavaScript
!function(t){"function"==typeof define&&define.amd?define(["jquery"],t):t("object"==typeof exports?require("jquery"):jQuery)}(function(t){"use strict";var i=t(window),e=t(document),h=window.location,a=/^(e|n|w|s|ne|nw|sw|se|all|crop|move|zoom)$/,r=/^(x|y|width|height)$/,s=/^(naturalWidth|naturalHeight|width|height|aspectRatio|ratio|rotate)$/,o="cropper-hidden",n="mouseup mouseleave touchend touchleave touchcancel",d=function(t){return"number"==typeof t},g=function(t,i){var e=[];return"number"==typeof i&&e.push(i),e.slice.apply(t,e)},l=function(t,i){var e=g(arguments,2);return function(){return t.apply(i,e.concat(g(arguments)))}},p=function(i,e){this.element=i,this.$element=t(i),this.defaults=t.extend({},p.DEFAULTS,t.isPlainObject(e)?e:{}),this.$original=null,this.ready=!1,this.built=!1,this.cropped=!1,this.rotated=!1,this.disabled=!1,this.replaced=!1,this.init()},c=Math.sqrt,u=Math.min,m=Math.max,f=Math.abs,v=Math.sin,w=Math.cos,x=parseFloat;p.prototype={constructor:p,support:{canvas:t.isFunction(t("<canvas>")[0].getContext)},init:function(){var i=this.defaults;t.each(i,function(t,e){switch(t){case"aspectRatio":i[t]=f(x(e))||NaN;break;case"autoCropArea":i[t]=f(x(e))||.8;break;case"minWidth":case"minHeight":i[t]=f(x(e))||0;break;case"maxWidth":case"maxHeight":i[t]=f(x(e))||1/0}}),this.image={rotate:0},this.load()},load:function(){var i,e,h=this,a=this.$element,r=this.element,s=this.image,o="";a.is("img")?e=a.prop("src"):a.is("canvas")&&this.support.canvas&&(e=r.toDataURL()),e&&(this.replaced&&(s.rotate=0),this.defaults.checkImageOrigin&&(a.prop("crossOrigin")||this.isCrossOriginURL(e))&&(o=" crossOrigin"),this.$clone=i=t("<img"+o+' src="'+e+'">'),i.one("load",function(){s.naturalWidth=this.naturalWidth||i.width(),s.naturalHeight=this.naturalHeight||i.height(),s.aspectRatio=s.naturalWidth/s.naturalHeight,h.url=e,h.ready=!0,h.build()}),i.addClass("cropper-invisible").prependTo("body"))},isCrossOriginURL:function(t){var i=t.match(/^(https?:)\/\/([^\:\/\?#]+):?(\d*)/i);return!(!i||i[1]===h.protocol&&i[2]===h.hostname&&i[3]===h.port)},build:function(){var i,e,h=this.$element,a=this.defaults;this.ready&&(this.built&&this.unbuild(),h.one("build.cropper",a.build),i=t.Event("build.cropper"),h.trigger(i),i.isDefaultPrevented()||(this.$cropper=e=t(p.TEMPLATE),h.addClass(o),this.$clone.removeClass("cropper-invisible").prependTo(e),this.rotated||(this.$original=this.$clone.clone(),this.$original.addClass(o).prependTo(this.$cropper),this.originalImage=t.extend({},this.image)),this.$container=h.parent(),this.$container.append(e),this.$canvas=e.find(".cropper-canvas"),this.$dragger=e.find(".cropper-dragger"),this.$viewer=e.find(".cropper-viewer"),a.autoCrop?this.cropped=!0:this.$dragger.addClass(o),a.dragCrop&&this.setDragMode("crop"),a.modal&&this.$canvas.addClass("cropper-modal"),!a.dashed&&this.$dragger.find(".cropper-dashed").addClass(o),!a.movable&&this.$dragger.find(".cropper-face").data("directive","move"),!a.resizable&&this.$dragger.find(".cropper-line, .cropper-point").addClass(o),this.addListeners(),this.initPreview(),this.built=!0,this.update(),this.replaced=!1,h.one("built.cropper",a.built),h.trigger("built.cropper")))},unbuild:function(){this.built&&(this.built=!1,this.removeListeners(),this.$preview.empty(),this.$preview=null,this.$dragger=null,this.$canvas=null,this.$container=null,this.$cropper.remove(),this.$cropper=null)},update:function(t){this.initContainer(),this.initCropper(),this.initImage(),this.initDragger(),t?(this.setData(t,!0),this.setDragMode("crop")):this.setData(this.defaults.data)},resize:function(){clearTimeout(this.resizing),this.resizing=setTimeout(t.proxy(this.update,this,this.getData()),200)},preview:function(){var i=this.image,e=this.dragger,h=i.width,a=i.height,r=e.left-i.left,s=e.top-i.top;this.$viewer.find("img").css({width:h,height:a,marginLeft:-r,marginTop:-s}),this.$preview.each(function(){var i=t(this),o=i.width()/e.width;i.find("img").css({width:h*o,height:a*o,marginLeft:-r*o,marginTop:-s*o})})},addListeners:function(){var h=this.defaults;this.$element.on("dragstart.cropper",h.dragstart).on("dragmove.cropper",h.dragmove).on("dragend.cropper",h.dragend),this.$cropper.on("mousedown touchstart",t.proxy(this.dragstart,this)).on("dblclick",t.proxy(this.dblclick,this)),h.zoomable&&this.$cropper.on("wheel mousewheel DOMMouseScroll",t.proxy(this.wheel,this)),h.multiple?this.$cropper.on("mousemove touchmove",t.proxy(this.dragmove,this)).on(n,t.proxy(this.dragend,this)):e.on("mousemove touchmove",this._dragmove=l(this.dragmove,this)).on(n,this._dragend=l(this.dragend,this)),i.on("resize.cropper",this._resize=l(this.resize,this))},removeListeners:function(){var t=this.defaults;this.$element.off("dragstart.cropper",t.dragstart).off("dragmove.cropper",t.dragmove).off("dragend.cropper",t.dragend),this.$cropper.off("mousedown touchstart",this.dragstart).off("dblclick",this.dblclick),t.zoomable&&this.$cropper.off("wheel mousewheel DOMMouseScroll",this.wheel),t.multiple?this.$cropper.off("mousemove touchmove",this.dragmove).off(n,this.dragend):e.off("mousemove touchmove",this._dragmove).off(n,this._dragend),i.off("resize.cropper",this._resize)},initPreview:function(){var i='<img src="'+this.url+'">';this.$preview=t(this.defaults.preview),this.$viewer.html(i),this.$preview.html(i).find("img").css("cssText","min-width:0!important;min-height:0!important;max-width:none!important;max-height:none!important;")},initContainer:function(){var t=this.$container;null!==t&&(this.container={width:m(t.width(),300),height:m(t.height(),150)})},initCropper:function(){var t,i=this.container,e=this.image;e.naturalWidth*i.height/e.naturalHeight-i.width>=0?(t={width:i.width,height:i.width/e.aspectRatio,left:0}).top=(i.height-t.height)/2:(t={width:i.height*e.aspectRatio,height:i.height,top:0}).left=(i.width-t.width)/2,this.$cropper&&this.$cropper.css({width:t.width,height:t.height,left:t.left,top:t.top}),this.cropper=t},initImage:function(){var i=this.image,e=this.cropper,h={_width:e.width,_height:e.height,width:e.width,height:e.height,left:0,top:0,ratio:e.width/i.naturalWidth};this.defaultImage=t.extend({},i,h),i._width!==e.width||i._height!==e.height?t.extend(i,h):(i=t.extend({},h,i),this.replaced&&(i.ratio=h.ratio)),this.image=i,this.renderImage()},renderImage:function(t){var i=this.image;"zoom"===t&&(i.left-=(i.width-i.oldWidth)/2,i.top-=(i.height-i.oldHeight)/2),i.left=u(m(i.left,i._width-i.width),0),i.top=u(m(i.top,i._height-i.height),0),this.$clone.css({width:i.width,height:i.height,marginLeft:i.left,marginTop:i.top}),t&&(this.defaults.done(this.getData()),this.preview())},initDragger:function(){var i,e=this.defaults,h=this.cropper,a=e.aspectRatio||this.image.aspectRatio,r=this.image.ratio;(i=h.height*a-h.width>=0?{height:h.width/a,width:h.width,left:0,top:(h.height-h.width/a)/2,maxWidth:h.width,maxHeight:h.width/a}:{height:h.height,width:h.height*a,left:(h.width-h.height*a)/2,top:0,maxWidth:h.height*a,maxHeight:h.height}).minWidth=0,i.minHeight=0,e.aspectRatio?(isFinite(e.maxWidth)?(i.maxWidth=u(i.maxWidth,e.maxWidth*r),i.maxHeight=i.maxWidth/a):isFinite(e.maxHeight)&&(i.maxHeight=u(i.maxHeight,e.maxHeight*r),i.maxWidth=i.maxHeight*a),e.minWidth>0?(i.minWidth=m(0,e.minWidth*r),i.minHeight=i.minWidth/a):e.minHeight>0&&(i.minHeight=m(0,e.minHeight*r),i.minWidth=i.minHeight*a)):(i.maxWidth=u(i.maxWidth,e.maxWidth*r),i.maxHeight=u(i.maxHeight,e.maxHeight*r),i.minWidth=m(0,e.minWidth*r),i.minHeight=m(0,e.minHeight*r)),i.minWidth=u(i.maxWidth,i.minWidth),i.minHeight=u(i.maxHeight,i.minHeight),i.height*=e.autoCropArea,i.width*=e.autoCropArea,i.left=(h.width-i.width)/2,i.top=(h.height-i.height)/2,i.oldLeft=i.left,i.oldTop=i.top,this.defaultDragger=i,this.dragger=t.extend({},i)},renderDragger:function(){var t=this.dragger,i=this.cropper;t.width>t.maxWidth?(t.width=t.maxWidth,t.left=t.oldLeft):t.width<t.minWidth&&(t.width=t.minWidth,t.left=t.oldLeft),t.height>t.maxHeight?(t.height=t.maxHeight,t.top=t.oldTop):t.height<t.minHeight&&(t.height=t.minHeight,t.top=t.oldTop),t.left=u(m(t.left,0),i.width-t.width),t.top=u(m(t.top,0),i.height-t.height),t.oldLeft=t.left,t.oldTop=t.top,this.dragger=t,this.disabled||this.defaults.done(this.getData()),this.$dragger.css({width:t.width,height:t.height,left:t.left,top:t.top}),this.preview()},reset:function(i){this.cropped&&(i&&(this.defaults.data={}),this.image=t.extend({},this.defaultImage),this.renderImage(),this.dragger=t.extend({},this.defaultDragger),this.setData(this.defaults.data))},clear:function(){this.cropped&&(this.cropped=!1,this.setData({x:0,y:0,width:0,height:0}),this.$canvas.removeClass("cropper-modal"),this.$dragger.addClass(o))},destroy:function(){var t=this.$element;this.ready&&(this.unbuild(),t.removeClass(o).removeData("cropper"),this.rotated&&t.attr("src",this.$original.attr("src")))},replace:function(i,e){var h,a=this,r=this.$element,s=this.element;i&&i!==this.url&&i!==r.attr("src")&&(e||(this.rotated=!1,this.replaced=!0),r.is("img")?(r.attr("src",i),this.load()):r.is("canvas")&&this.support.canvas&&(h=s.getContext("2d"),t('<img src="'+i+'">').one("load",function(){s.width=this.width,s.height=this.height,h.clearRect(0,0,s.width,s.height),h.drawImage(this,0,0),a.load()})))},setData:function(i,e){var h=this.cropper,a=this.dragger,r=this.image,s=this.defaults.aspectRatio;this.built&&void 0!==i&&((null===i||t.isEmptyObject(i))&&(a=t.extend({},this.defaultDragger)),t.isPlainObject(i)&&!t.isEmptyObject(i)&&(e||(this.defaults.data=i),i=this.transformData(i),d(i.x)&&i.x<=h.width-r.left&&(a.left=i.x+r.left),d(i.y)&&i.y<=h.height-r.top&&(a.top=i.y+r.top),s?d(i.width)&&i.width<=a.maxWidth&&i.width>=a.minWidth?(a.width=i.width,a.height=a.width/s):d(i.height)&&i.height<=a.maxHeight&&i.height>=a.minHeight&&(a.height=i.height,a.width=a.height*s):(d(i.width)&&i.width<=a.maxWidth&&i.width>=a.minWidth&&(a.width=i.width),d(i.height)&&i.height<=a.maxHeight&&i.height>=a.minHeight&&(a.height=i.height))),this.dragger=a,this.renderDragger())},getData:function(t){var i=this.dragger,e=this.image,h={};return this.built&&(h={x:i.left-e.left,y:i.top-e.top,width:i.width,height:i.height},h=this.transformData(h,!0,t)),h},transformData:function(i,e,h){var a=this.image.ratio,s={};return t.each(i,function(t,i){i=x(i),r.test(t)&&!isNaN(i)&&(s[t]=e?h?Math.round(i/a):i/a:i*a)}),s},setAspectRatio:function(t){var i="auto"===t;t=x(t),(i||!isNaN(t)&&t>0)&&(this.defaults.aspectRatio=i?NaN:t,this.built&&(this.initDragger(),this.renderDragger()))},getImageData:function(){var i={};return this.ready&&t.each(this.image,function(t,e){s.test(t)&&(i[t]=e)}),i},getDataURL:function(i,e,h){var a,r=t("<canvas>")[0],s=this.getData(),o="";return t.isPlainObject(i)||(h=e,e=i,i={}),i=t.extend({width:s.width,height:s.height},i),this.cropped&&this.support.canvas&&(r.width=i.width,r.height=i.height,a=r.getContext("2d"),"image/jpeg"===e&&(a.fillStyle="#fff",a.fillRect(0,0,i.width,i.height)),a.drawImage(this.$clone[0],s.x,s.y,s.width,s.height,0,0,i.width,i.height),o=r.toDataURL(e,h)),o},setDragMode:function(t){var i=this.$canvas,e=this.defaults,h=!1,a=!1;if(this.built&&!this.disabled){switch(t){case"crop":e.dragCrop&&(h=!0,i.data("directive",t));break;case"move":a=!0,i.data("directive",t);break;default:i.removeData("directive")}i.toggleClass("cropper-crop",h).toggleClass("cropper-move",a)}},enable:function(){this.built&&(this.disabled=!1,this.$cropper.removeClass("cropper-disabled"))},disable:function(){this.built&&(this.disabled=!0,this.$cropper.addClass("cropper-disabled"))},rotate:function(t){var i=this.image;t=x(t)||0,this.built&&0!==t&&!this.disabled&&this.defaults.rotatable&&this.support.canvas&&(this.rotated=!0,t=i.rotate=(i.rotate+t)%360,this.replace(this.getRotatedDataURL(t),!0))},getRotatedDataURL:function(i){var e=t("<canvas>")[0],h=e.getContext("2d"),a=i*Math.PI/180,r=f(i)%180,s=(r>90?180-r:r)*Math.PI/180,o=this.originalImage,n=o.naturalWidth,d=o.naturalHeight,g=f(n*w(s)+d*v(s)),l=f(n*v(s)+d*w(s));return e.width=g,e.height=l,h.save(),h.translate(g/2,l/2),h.rotate(a),h.drawImage(this.$original[0],-n/2,-d/2,n,d),h.restore(),e.toDataURL()},zoom:function(t){var i,e,h,a=this.image;t=x(t),this.built&&t&&!this.disabled&&this.defaults.zoomable&&(i=a.width*(1+t),e=a.height*(1+t),(h=i/a._width)>10||(h<1&&(i=a._width,e=a._height),h<=1?this.setDragMode("crop"):this.setDragMode("move"),a.oldWidth=a.width,a.oldHeight=a.height,a.width=i,a.height=e,a.ratio=a.width/a.naturalWidth,this.renderImage("zoom")))},dblclick:function(){this.disabled||(this.$canvas.hasClass("cropper-crop")?this.setDragMode("move"):this.setDragMode("crop"))},wheel:function(t){var i,e=t.originalEvent;this.disabled||(t.preventDefault(),i=e.deltaY?(i=e.deltaY)%5==0?i/5:i%117.25==0?i/117.25:i/166.66665649414062:e.wheelDelta?-e.wheelDelta/120:e.detail?e.detail/3:0,this.zoom(.1*i))},dragstart:function(i){var e,h,r,s=i.originalEvent.touches,o=i;if(!this.disabled){if(s){if((r=s.length)>1){if(!this.defaults.zoomable||2!==r)return;o=s[1],this.startX2=o.pageX,this.startY2=o.pageY,e="zoom"}o=s[0]}if(e=e||t(o.target).data("directive"),a.test(e)){if(i.preventDefault(),h=t.Event("dragstart.cropper"),this.$element.trigger(h),h.isDefaultPrevented())return;this.directive=e,this.cropping=!1,this.startX=o.pageX,this.startY=o.pageY,"crop"===e&&(this.cropping=!0,this.$canvas.addClass("cropper-modal"))}}},dragmove:function(i){var e,h,a=i.originalEvent.touches,r=i;if(!this.disabled){if(a){if((h=a.length)>1){if(!this.defaults.zoomable||2!==h)return;r=a[1],this.endX2=r.pageX,this.endY2=r.pageY}r=a[0]}if(this.directive){if(i.preventDefault(),e=t.Event("dragmove.cropper"),this.$element.trigger(e),e.isDefaultPrevented())return;this.endX=r.pageX,this.endY=r.pageY,this.dragging()}}},dragend:function(i){var e;if(!this.disabled&&this.directive){if(i.preventDefault(),e=t.Event("dragend.cropper"),this.$element.trigger(e),e.isDefaultPrevented())return;this.cropping&&(this.cropping=!1,this.$canvas.toggleClass("cropper-modal",this.cropped&&this.defaults.modal)),this.directive=""}},dragging:function(){var t,i=this.directive,e=this.image,h=this.cropper,a=h.width,r=h.height,s=this.dragger,n=s.width,d=s.height,g=s.left,l=s.top,p=g+n,u=l+d,m=!0,v=this.defaults,w=v.aspectRatio,x={x:this.endX-this.startX,y:this.endY-this.startY};switch(w&&(x.X=x.y*w,x.Y=x.x/w),i){case"all":g+=x.x,l+=x.y;break;case"e":if(x.x>=0&&(p>=a||w&&(l<=0||u>=r))){m=!1;break}n+=x.x,w&&(d=n/w,l-=x.Y/2),n<0&&(i="w",n=0);break;case"n":if(x.y<=0&&(l<=0||w&&(g<=0||p>=a))){m=!1;break}d-=x.y,l+=x.y,w&&(n=d*w,g+=x.X/2),d<0&&(i="s",d=0);break;case"w":if(x.x<=0&&(g<=0||w&&(l<=0||u>=r))){m=!1;break}n-=x.x,g+=x.x,w&&(d=n/w,l+=x.Y/2),n<0&&(i="e",n=0);break;case"s":if(x.y>=0&&(u>=r||w&&(g<=0||p>=a))){m=!1;break}d+=x.y,w&&(n=d*w,g-=x.X/2),d<0&&(i="n",d=0);break;case"ne":if(w){if(x.y<=0&&(l<=0||p>=a)){m=!1;break}d-=x.y,l+=x.y,n=d*w}else x.x>=0?p<a?n+=x.x:x.y<=0&&l<=0&&(m=!1):n+=x.x,x.y<=0?l>0&&(d-=x.y,l+=x.y):(d-=x.y,l+=x.y);d<0&&(i="sw",d=0,n=0);break;case"nw":if(w){if(x.y<=0&&(l<=0||g<=0)){m=!1;break}d-=x.y,l+=x.y,n=d*w,g+=x.X}else x.x<=0?g>0?(n-=x.x,g+=x.x):x.y<=0&&l<=0&&(m=!1):(n-=x.x,g+=x.x),x.y<=0?l>0&&(d-=x.y,l+=x.y):(d-=x.y,l+=x.y);d<0&&(i="se",d=0,n=0);break;case"sw":if(w){if(x.x<=0&&(g<=0||u>=r)){m=!1;break}n-=x.x,g+=x.x,d=n/w}else x.x<=0?g>0?(n-=x.x,g+=x.x):x.y>=0&&u>=r&&(m=!1):(n-=x.x,g+=x.x),x.y>=0?u<r&&(d+=x.y):d+=x.y;n<0&&(i="ne",d=0,n=0);break;case"se":if(w){if(x.x>=0&&(p>=a||u>=r)){m=!1;break}d=(n+=x.x)/w}else x.x>=0?p<a?n+=x.x:x.y>=0&&u>=r&&(m=!1):n+=x.x,x.y>=0?u<r&&(d+=x.y):d+=x.y;n<0&&(i="nw",d=0,n=0);break;case"move":e.left+=x.x,e.top+=x.y,this.renderImage("move"),m=!1;break;case"zoom":v.zoomable&&(this.zoom(function(t,i,e,h,a,r){return(c(a*a+r*r)-c(e*e+h*h))/c(t*t+i*i)}(e.width,e.height,f(this.startX-this.startX2),f(this.startY-this.startY2),f(this.endX-this.endX2),f(this.endY-this.endY2))),this.endX2=this.startX2,this.endY2=this.startY2);break;case"crop":x.x&&x.y&&(t=this.$cropper.offset(),g=this.startX-t.left,l=this.startY-t.top,n=s.minWidth,d=s.minHeight,x.x>0?x.y>0?i="se":(i="ne",l-=d):x.y>0?(i="sw",g-=n):(i="nw",g-=n,l-=d),this.cropped||(this.cropped=!0,this.$dragger.removeClass(o)))}m&&(s.width=n,s.height=d,s.left=g,s.top=l,this.directive=i,this.renderDragger()),this.startX=this.endX,this.startY=this.endY}},p.TEMPLATE=function(t,i){return i=i.split(","),'<0 6="5-container"><0 6="5-canvas"></0><0 6="5-dragger"><1 6="5-viewer"></1><1 6="5-8 8-h"></1><1 6="5-8 8-v"></1><1 6="5-face" 3-2="all"></1><1 6="5-7 7-e" 3-2="e"></1><1 6="5-7 7-n" 3-2="n"></1><1 6="5-7 7-w" 3-2="w"></1><1 6="5-7 7-s" 3-2="s"></1><1 6="5-4 4-e" 3-2="e"></1><1 6="5-4 4-n" 3-2="n"></1><1 6="5-4 4-w" 3-2="w"></1><1 6="5-4 4-s" 3-2="s"></1><1 6="5-4 4-ne" 3-2="ne"></1><1 6="5-4 4-nw" 3-2="nw"></1><1 6="5-4 4-sw" 3-2="sw"></1><1 6="5-4 4-se" 3-2="se"></1></0></0>'.replace(/\d+/g,function(t){return i[t]})}(0,"div,span,directive,data,point,cropper,class,line,dashed"),p.DEFAULTS={aspectRatio:"auto",autoCropArea:.8,data:{},done:t.noop,preview:"",multiple:!1,autoCrop:!0,dragCrop:!0,dashed:!0,modal:!0,movable:!0,resizable:!0,zoomable:!0,rotatable:!0,checkImageOrigin:!0,minWidth:0,minHeight:0,maxWidth:1/0,maxHeight:1/0,build:null,built:null,dragstart:null,dragmove:null,dragend:null},p.setDefaults=function(i){t.extend(p.DEFAULTS,i)},p.other=t.fn.cropper,t.fn.cropper=function(i){var e,h=g(arguments,1);return this.each(function(){var a,r=t(this),s=r.data("cropper");s||r.data("cropper",s=new p(this,i)),"string"==typeof i&&t.isFunction(a=s[i])&&(e=a.apply(s,h))}),void 0!==e?e:this},t.fn.cropper.Constructor=p,t.fn.cropper.setDefaults=p.setDefaults,t.fn.cropper.noConflict=function(){return t.fn.cropper=p.other,this}}); |