!function(n){n.Jcrop=function(t,i){function h(n){return Math.round(n)+"px"}function ft(n){return r.baseClass+"-"+n}function et(t){var i=n(t).offset();return[i.left,i.top]}function nt(n){return[n.pageX-b[0],n.pageY-b[1]]}function ri(t){"object"!=typeof t&&(t={});r=n.extend(r,t);n.each(["onChange","onSelect","onRelease","onDblClick"],function(n,t){"function"!=typeof r[t]&&(r[t]=function(){})})}function ui(n,t,i){if(b=et(e),p.setCursor("move"===n?n:n+"-resize"),"move"===n)return p.activateHandlers(function(n){var t=n;return kt.watchKeys(),function(n){s.moveOffset([n[0]-t[0],n[1]-t[1]]);t=n;u.update()}}(t),pt,i);var o=s.getFixed(),f=fi(n),h=s.getCorner(fi(f));s.setPressed(s.getCorner(f));s.setCurrent(h);p.activateHandlers(function(n,t){return function(i){if(r.aspectRatio)switch(n){case"e":case"w":i[1]=t.y+1;break;case"n":case"s":i[0]=t.x+1}else switch(n){case"e":case"w":i[1]=t.y2;break;case"n":case"s":i[0]=t.x2}s.setCurrent(i);u.update()}}(n,o),pt,i)}function fi(n){switch(n){case"n":return"sw";case"s":case"e":return"nw";case"w":return"ne";case"ne":return"sw";case"nw":return"se";case"se":return"nw";case"sw":return"ne"}}function ei(n){return function(t){return!r.disabled&&!("move"===n&&!r.allowMove)&&(b=et(e),rt=!0,ui(n,nt(t)),t.stopPropagation(),t.preventDefault(),!1)}}function oi(n,t,i){var r=n.width(),u=n.height();r>t&&t>0&&(r=t,u=t/n.width()*n.height());u>i&&i>0&&(u=i,r=i/n.height()*n.width());l=n.width()/r;a=n.height()/u;n.width(r).height(u)}function ot(n){return{x:n.x*l,y:n.y*a,x2:n.x2*l,y2:n.y2*a,w:n.w*l,h:n.h*a}}function pt(){var n=s.getFixed();n.w>r.minSelect[0]&&n.h>r.minSelect[1]?(u.enableHandles(),u.done()):u.release();p.setCursor(r.allowSelect?"crosshair":"default")}function si(n){if(r.disabled||!r.allowSelect)return!1;rt=!0;b=et(e);u.disableHandles();p.setCursor("crosshair");var t=nt(n);return s.setPressed(t),u.update(),p.activateHandlers(wi,pt,"touch"===n.type.substring(0,5)),kt.watchKeys(),n.stopPropagation(),n.preventDefault(),!1}function wi(n){s.setCurrent(n);u.update()}function hi(){var t=n("<div><\/div>").addClass(ft("tracker"));return ti&&t.css({opacity:0,backgroundColor:"white"}),t}function ai(n){vi([n[0]/l,n[1]/a,n[2]/l,n[3]/a]);r.onSelect.call(v,ot(s.getFixed()));u.enableHandles()}function vi(n){s.setPressed([n[0],n[1]]);s.setCurrent([n[2],n[3]]);u.update()}function yi(){r.disabled=!0;u.disableHandles();u.setCursor("default");p.setCursor("default")}function pi(){r.disabled=!1;gt()}function dt(t,i,u){var f=i||r.bgColor;r.bgFade&&n.fx.step.hasOwnProperty("backgroundColor")&&r.fadeTime&&!u?t.animate({backgroundColor:f},{queue:!1,duration:r.fadeTime}):t.css("backgroundColor",f)}function gt(n){r.allowResize?n?u.enableOnly():u.enableHandles():u.disableHandles();p.setCursor(r.allowSelect?"crosshair":"default");u.setCursor(r.allowMove?"move":"default");r.hasOwnProperty("trueSize")&&(l=r.trueSize[0]/o,a=r.trueSize[1]/f);r.hasOwnProperty("setSelect")&&(ai(r.setSelect),u.done(),delete r.setSelect);g.refresh();r.bgColor!=li&&(dt(r.shade?g.getShades():w,r.shade&&r.shadeColor||r.bgColor),li=r.bgColor);at!=r.bgOpacity&&(at=r.bgOpacity,r.shade?g.refresh():u.setBgOpacity(at));st=r.maxSize[0]||0;ht=r.maxSize[1]||0;ct=r.minSize[0]||0;lt=r.minSize[1]||0;r.hasOwnProperty("outerImage")&&(e.attr("src",r.outerImage),delete r.outerImage);u.refresh()}var b,r=n.extend({},n.Jcrop.defaults),ni=navigator.userAgent.toLowerCase(),ti=/msie/.test(ni),ii=/msie [1-6]\./.test(ni),vt,e,v;"object"!=typeof t&&(t=n(t)[0]);"object"!=typeof i&&(i={});ri(i);var wt={border:"none",visibility:"visible",margin:0,padding:0,position:"absolute",top:0,left:0},c=n(t),ci=!0;"IMG"==t.tagName?(0!=c[0].width&&0!=c[0].height?(c.width(c[0].width),c.height(c[0].height)):(vt=new Image,vt.src=c[0].src,c.width(vt.width),c.height(vt.height)),e=c.clone().removeAttr("id").css(wt).show(),e.width(c.width()),e.height(c.height()),c.after(e).hide()):(e=c.css(wt).show(),ci=!1,null===r.shade&&(r.shade=!0));oi(e,r.boxWidth,r.boxHeight);var o=e.width(),f=e.height(),w=n("<div />").width(o).height(f).addClass(ft("holder")).css({position:"relative",backgroundColor:r.bgColor}).insertAfter(c).append(e);r.addClass&&w.addClass(r.addClass);var k=n("<div />"),yt=n("<div />").width("100%").height("100%").css({zIndex:310,position:"absolute",overflow:"hidden"}),tt=n("<div />").width("100%").height("100%").css("zIndex",320),it=n("<div />").css({position:"absolute",zIndex:600}).dblclick(function(){var n=s.getFixed();r.onDblClick.call(v,n)}).insertBefore(e).append(yt,tt);ci&&(k=n("<img />").attr("src",e.attr("src")).css(wt).width(o).height(f),yt.append(k));ii&&it.css({overflowY:"hidden"});var st,ht,ct,lt,l,a,rt,bt,ut=r.boundary,d=hi().width(o+2*ut).height(f+2*ut).css({position:"absolute",top:h(-ut),left:h(-ut),zIndex:290}).mousedown(si),li=r.bgColor,at=r.bgOpacity;b=et(e);var y=function(){function n(){var n,i={},u=["touchstart","touchmove","touchend"],f=document.createElement("div"),t,r;try{for(n=0;n<u.length;n++)t=u[n],r=(t="on"+t)in f,r||(f.setAttribute(t,"return;"),r="function"==typeof f[t]),i[u[n]]=r;return i.touchstart&&i.touchend&&i.touchmove}catch(n){return!1}}return{createDragger:function(n){return function(t){return!r.disabled&&!("move"===n&&!r.allowMove)&&(b=et(e),rt=!0,ui(n,nt(y.cfilter(t)),!0),t.stopPropagation(),t.preventDefault(),!1)}},newSelection:function(n){return si(y.cfilter(n))},cfilter:function(n){return n.pageX=n.originalEvent.changedTouches[0].pageX,n.pageY=n.originalEvent.changedTouches[0].pageY,n},isSupported:n,support:!0===r.touchSupport||!1===r.touchSupport?r.touchSupport:n()}}(),s=function(){function c(){if(!r.aspectRatio)return function(){var r,s=u-n,h=i-t;return st&&Math.abs(s)>st&&(u=s>0?n+st:n-st),ht&&Math.abs(h)>ht&&(i=h>0?t+ht:t-ht),lt/a&&Math.abs(h)<lt/a&&(i=h>0?t+lt/a:t-lt/a),ct/l&&Math.abs(s)<ct/l&&(u=s>0?n+ct/l:n-ct/l),n<0&&(u-=n,n-=n),t<0&&(i-=t,t-=t),u<0&&(n-=u,u-=u),i<0&&(t-=i,i-=i),u>o&&(n-=r=u-o,u-=r),i>f&&(t-=r=i-f,i-=r),n>o&&(i-=r=n-f,t-=r),t>f&&(i-=r=t-f,t-=r),y(e(n,t,u,i))}();var s,h,v,p,c=r.aspectRatio,b=r.minSize[0]/l,w=r.maxSize[0]/l,g=r.maxSize[1]/a,k=u-n,d=i-t,nt=Math.abs(k),tt=Math.abs(d);return 0===w&&(w=10*o),0===g&&(g=10*f),nt/tt<c?(h=i,v=tt*c,(s=k<0?n-v:v+n)<0?(s=0,p=Math.abs((s-n)/c),h=d<0?t-p:p+t):s>o&&(s=o,p=Math.abs((s-n)/c),h=d<0?t-p:p+t)):(s=u,p=nt/c,(h=d<0?t-p:t+p)<0?(h=0,v=Math.abs((h-t)*c),s=k<0?n-v:v+n):h>f&&(h=f,v=Math.abs(h-t)*c,s=k<0?n-v:v+n)),s===n&&(s=n+b),s>n?(s-n<b?s=n+b:s-n>w&&(s=n+w),h=h>t?t+(s-n)/c:t-(s-n)/c):s<n&&(n-s<b?s=n-b:n-s>w&&(s=n-w),h=h>t?t+(n-s)/c:t-(n-s)/c),s<0?(n-=s,s=0):s>o&&(n-=s-o,s=o),h<0?(t-=h,h=0):h>f&&(t-=h-f,h=f),y(e(n,t,s,h))}function v(n){return n[0]<0&&(n[0]=0),n[1]<0&&(n[1]=0),n[0]>o&&(n[0]=o),n[1]>f&&(n[1]=f),[Math.round(n[0]),Math.round(n[1])]}function e(n,t,i,r){var u=n,f=i,e=t,o=r;return i<n&&(u=i,f=n),r<t&&(e=r,o=t),[u,e,f,o]}function y(n){return{x:n[0],y:n[1],x2:n[2],y2:n[3],w:n[2]-n[0],h:n[3]-n[1]}}var s,h,n=0,t=0,u=0,i=0;return{flipCoords:e,setPressed:function(r){r=v(r);u=n=r[0];i=t=r[1]},setCurrent:function(n){n=v(n);s=n[0]-u;h=n[1]-i;u=n[0];i=n[1]},getOffset:function(){return[s,h]},moveOffset:function(r){var e=r[0],s=r[1];0>n+e&&(e-=e+n);0>t+s&&(s-=s+t);f<i+s&&(s+=f-(i+s));o<u+e&&(e+=o-(u+e));n+=e;u+=e;t+=s;i+=s},getCorner:function(n){var t=c();switch(n){case"ne":return[t.x2,t.y];case"nw":return[t.x,t.y];case"se":return[t.x2,t.y2];case"sw":return[t.x,t.y2]}},getFixed:c}}(),g=function(){function v(){return y(s.getFixed())}function y(n){i.top.css({left:h(n.x),width:h(n.w),height:h(n.y)});i.bottom.css({top:h(n.y2),left:h(n.x),width:h(n.w),height:h(f-n.y2)});i.right.css({left:h(n.x2),width:h(o-n.x2)});i.left.css({width:h(n.x)})}function l(){return n("<div />").css({position:"absolute",backgroundColor:r.shadeColor||r.bgColor}).appendTo(t)}function p(){c||(c=!0,t.insertBefore(e),v(),u.setBgOpacity(1,0,1),k.hide(),b(r.shadeColor||r.bgColor,1),u.isAwake()?a(r.bgOpacity,1):a(1,1))}function b(n,t){dt(g(),n,t)}function d(){c&&(t.remove(),k.show(),c=!1,u.isAwake()?u.setBgOpacity(r.bgOpacity,1,1):(u.setBgOpacity(1,1,1),u.disableHandles()),dt(w,0,1))}function a(n,i){c&&(r.bgFade&&!i?t.animate({opacity:1-n},{queue:!1,duration:r.fadeTime}):t.css({opacity:1-n}))}function g(){return t.children()}var c=!1,t=n("<div />").css({position:"absolute",zIndex:240,opacity:0}),i={top:l(),left:l().height(f),right:l().height(f),bottom:l()};return{update:v,updateRaw:y,getShades:g,setBgColor:b,enable:p,disable:d,resize:function(n,t){i.left.css({height:h(t)});i.right.css({height:h(t)})},refresh:function(){r.shade?p():d();u.isAwake()&&a(r.bgOpacity)},opacity:a}}(),u=function(){function l(t,i){var r=n("<div />").mousedown(ei(t)).css({cursor:t+"-resize",position:"absolute",zIndex:i}).addClass("ord-"+t);return y.support&&r.bind("touchstart.jcrop",y.createDragger(t)),tt.append(r),r}function a(){var n=s.getFixed();s.setPressed([n.x,n.y]);s.setCurrent([n.x2,n.y2]);p()}function p(n){if(t)return w(n)}function w(n){var e,c,u,f,i=s.getFixed();e=i.w;c=i.h;it.width(Math.round(e)).height(Math.round(c));u=i.x;f=i.y;r.shade||k.css({top:h(-f),left:h(-u)});it.css({top:h(f),left:h(u)});r.shade&&g.updateRaw(i);t||function(){it.show();r.shade?g.opacity(at):o(at,!0);t=!0}();n?r.onSelect.call(v,ot(i)):r.onChange.call(v,ot(i))}function o(n,i,u){(t||i)&&(r.bgFade&&!u?e.animate({opacity:n},{queue:!1,duration:r.fadeTime}):e.css("opacity",n))}function b(){if(i=!0,r.allowResize)return tt.show(),!0}function u(){i=!1;tt.hide()}function d(n){n?(bt=!0,u()):(bt=!1,b())}var t,c=370,nt={},rt={},ut={},i=!1,f;return r.dragEdges&&n.isArray(r.createDragbars)&&function(n){for(var t=0;t<n.length;t++)ut[n[t]]=l(n[t],c++).addClass("jcrop-dragbar")}(r.createDragbars),n.isArray(r.createHandles)&&function(n){for(var f,i,u,t=0;t<n.length;t++)rt[n[t]]=(f=n[t],i=void 0,u=void 0,i=r.handleSize,u=l(f,c++).css({opacity:r.handleOpacity}).addClass(ft("handle")),i&&u.width(i).height(i),u)}(r.createHandles),r.drawBorders&&n.isArray(r.createBorders)&&function(t){for(var i,e,f,u=0;u<t.length;u++){switch(t[u]){case"n":i="hline";break;case"s":i="hline bottom";break;case"e":i="vline right";break;case"w":i="vline"}nt[t[u]]=(e=i,f=void 0,f=n("<div />").css({position:"absolute",opacity:r.borderOpacity}).addClass(ft(e)),yt.append(f),f)}}(r.createBorders),n(document).bind("touchstart.jcrop-ios",function(t){n(t.currentTarget).hasClass("jcrop-tracker")&&t.stopPropagation()}),f=hi().mousedown(ei("move")).css({cursor:"move",position:"absolute",zIndex:360}),y.support&&f.bind("touchstart.jcrop",y.createDragger("move")),yt.append(f),u(),{updateVisible:p,update:w,release:function(){u();it.hide();r.shade?g.opacity(1):o(1);t=!1;r.onRelease.call(v)},refresh:a,isAwake:function(){return t},setCursor:function(n){f.css("cursor",n)},enableHandles:b,enableOnly:function(){i=!0},showHandles:function(){i&&tt.show()},disableHandles:u,animMode:d,setBgOpacity:o,done:function(){d(!1);a()}}}(),p=function(){function h(n){return t(nt(n)),!1}function i(i){return i.preventDefault(),i.stopPropagation(),rt&&(rt=!1,f(nt(i)),u.isAwake()&&r.onSelect.call(v,ot(s.getFixed())),d.css({zIndex:290}),n(document).unbind(".jcrop"),t=function(){},f=function(){}),!1}function c(n){return t(nt(y.cfilter(n))),!1}function l(n){return i(y.cfilter(n))}var t=function(){},f=function(){},o=r.trackDocument;return o||d.mousemove(h).mouseup(i).mouseout(i),e.before(d),{activateHandlers:function(r,u,e){return rt=!0,t=r,f=u,function(t){d.css({zIndex:450});t?n(document).bind("touchmove.jcrop",c).bind("touchend.jcrop",l):o&&n(document).bind("mousemove.jcrop",h).bind("mouseup.jcrop",i)}(e),!1},setCursor:function(n){d.css("cursor",n)}}}(),kt=function(){function i(n,t,i){r.allowMove&&(s.moveOffset([t,i]),u.updateVisible(!0));n.preventDefault();n.stopPropagation()}var t=n('<input type="radio" />').css({position:"fixed",left:"-120px",width:"12px"}).addClass("jcrop-keymgr"),f=n("<div />").css({position:"absolute",overflow:"hidden"}).append(t);return r.keySupport&&(t.keydown(function(n){if(n.ctrlKey||n.metaKey)return!0;var t=!n.shiftKey?1:10;switch(n.keyCode){case 37:i(n,-t,0);break;case 39:i(n,t,0);break;case 38:i(n,0,-t);break;case 40:i(n,0,t);break;case 27:r.allowSelect&&u.release();break;case 9:return!0}return!1}).blur(function(){t.hide()}),ii||!r.fixedSupport?(t.css({position:"absolute",left:"-20px"}),f.append(t).insertBefore(e)):t.insertBefore(e)),{watchKeys:function(){r.keySupport&&(t.show(),t.focus())}}}();return y.support&&d.bind("touchstart.jcrop",y.newSelection),tt.hide(),gt(!0),v={setImage:function(n,t){u.release();yi();var i=new Image;i.onload=function(){var u=i.width,s=i.height,h=r.boxWidth,c=r.boxHeight;e.width(u).height(s);e.attr("src",n);k.attr("src",n);oi(e,h,c);o=e.width();f=e.height();k.width(o).height(f);d.width(o+2*ut).height(f+2*ut);w.width(o).height(f);g.resize(o,f);pi();"function"==typeof t&&t.call(v)};i.src=n},animateTo:function(n,t){function k(){window.setTimeout(b,d)}var c=n[0]/l,y=n[1]/a,p=n[2]/l,w=n[3]/a,b;if(!bt){var o=s.flipCoords(c,y,p,w),h=s.getFixed(),e=[h.x,h.y,h.x2,h.y2],i=e,d=r.animationDelay,g=o[0]-e[0],nt=o[1]-e[1],tt=o[2]-e[2],it=o[3]-e[3],f=0,rt=r.swingSpeed;c=i[0];y=i[1];p=i[2];w=i[3];u.animMode(!0);b=function(){f+=(100-f)/rt;i[0]=Math.round(c+f/100*g);i[1]=Math.round(y+f/100*nt);i[2]=Math.round(p+f/100*tt);i[3]=Math.round(w+f/100*it);f>=99.8&&(f=100);f<100?(vi(i),k()):(u.done(),u.animMode(!1),"function"==typeof t&&t.call(v))};k()}},setSelect:ai,setOptions:function(n){ri(n);gt()},tellSelect:function(){return ot(s.getFixed())},tellScaled:function(){return s.getFixed()},setClass:function(n){w.removeClass().addClass(ft("holder")).addClass(n)},disable:yi,enable:pi,cancel:function(){u.done();p.activateHandlers(null,null)},release:u.release,destroy:function(){w.remove();c.show();c.css("visibility","visible");n(t).removeData("Jcrop")},focus:kt.watchKeys,getBounds:function(){return[o*l,f*a]},getWidgetSize:function(){return[o,f]},getScaleFactor:function(){return[l,a]},getOptions:function(){return r},ui:{holder:w,selection:it}},ti&&w.bind("selectstart",function(){return!1}),c.data("Jcrop",v),v};n.fn.Jcrop=function(t,i){var r;return this.each(function(){if(n(this).data("Jcrop")){if("api"===t)return n(this).data("Jcrop");n(this).data("Jcrop").setOptions(t)}else"IMG"==this.tagName?n.Jcrop.Loader(this,function(){n(this).css({display:"block",visibility:"hidden"});r=n.Jcrop(this,t);n.isFunction(i)&&i.call(r)}):(n(this).css({display:"block",visibility:"hidden"}),r=n.Jcrop(this,t),n.isFunction(i)&&i.call(r))}),this};n.Jcrop.Loader=function(t,i,r){var u=n(t),f=u[0];u.bind("load.jcloader",function t(){f.complete?(u.unbind(".jcloader"),n.isFunction(i)&&i.call(f)):window.setTimeout(t,50)}).bind("error.jcloader",function(){u.unbind(".jcloader");n.isFunction(r)&&r.call(f)});f.complete&&n.isFunction(i)&&(u.unbind(".jcloader"),i.call(f))};n.Jcrop.defaults={allowSelect:!0,allowMove:!0,allowResize:!0,trackDocument:!0,baseClass:"jcrop",addClass:null,bgColor:"black",bgOpacity:.6,bgFade:!1,borderOpacity:.4,handleOpacity:.5,handleSize:null,aspectRatio:0,keySupport:!0,createHandles:["n","s","e","w","nw","ne","se","sw"],createDragbars:["n","s","e","w"],createBorders:["n","s","e","w"],drawBorders:!0,dragEdges:!0,fixedSupport:!0,touchSupport:null,shade:null,boxWidth:0,boxHeight:0,boundary:2,fadeTime:400,animationDelay:20,swingSpeed:3,minSelect:[0,0],maxSize:[0,0],minSize:[0,0],onChange:function(){},onSelect:function(){},onDblClick:function(){},onRelease:function(){}}}(jQuery)