/**
 * jQuery Wheel Color Picker
 * 
 * http://www.jar2.net/projects/jquery-wheelcolorpicker
 * 
 * Author : Fajar Chandra
 * Date   : 2016.01.28
 * 
 * Copyright © 2011-2016 Fajar Chandra. All rights reserved.
 * Released under MIT License.
 * http://www.opensource.org/licenses/mit-license.php
 */
!function(e){e.fn.wheelColorPicker=function(){var r=this;if(arguments.length>0)var i=[].shift,s=i.apply(arguments),a="string"==typeof s?s.charAt(0).toUpperCase()+s.slice(1):s;else var s=void 0,a=void 0;var o=arguments;return this.each(function(){var i=e(this).data("jQWCP.instance");if(void 0==i||null==i){var n={};"object"==typeof s&&(n=s),i=new t.ColorPicker(this,n),e(this).data("jQWCP.instance",i)}if(void 0===s||"object"==typeof s);else if("function"==typeof i[s]){var l=i[s].apply(i,o);if(l!==i)return r=l,!1}else if("function"==typeof i["set"+a]&&o.length>0){var l=i["set"+a].apply(i,o);if(l!==i)return r=l,!1}else if("function"==typeof i["get"+a]){var l=i["get"+a].apply(i,o);if(l!==i)return r=l,!1}else if(void 0!==i.options[s]&&o.length>0)i.options[s]=o[0];else{if(void 0!==i.options[s])return r=i.options[s],!1;e.error("Method/option named "+s+" does not exist on jQuery.wheelColorPicker")}}),r};var t=e.fn.wheelColorPicker;t.defaults={format:"hex",preview:!1,live:!0,userinput:!0,validate:!1,autoResize:!0,autoConvert:!0,preserveWheel:null,cssClass:"",layout:"popup",animDuration:200,quality:1,sliders:null,sliderLabel:!0,sliderValue:!1,rounding:2,mobile:!0,mobileWidth:480,hideKeyboard:!1,htmlOptions:!0,snap:!1,snapTolerance:.05},t.BUG_RELATIVE_PAGE_ORIGIN=!1,t.ORIGIN={left:0,top:0},t.colorToStr=function(e,t){var r="";switch(t){case"css":r="#";case"hex":var i=Math.round(255*e.r).toString(16);1==i.length&&(i="0"+i);var s=Math.round(255*e.g).toString(16);1==s.length&&(s="0"+s);var a=Math.round(255*e.b).toString(16);1==a.length&&(a="0"+a),r+=i+s+a;break;case"rgb":r="rgb("+Math.round(255*e.r)+","+Math.round(255*e.g)+","+Math.round(255*e.b)+")";break;case"rgb%":r="rgb("+100*e.r+"%,"+100*e.g+"%,"+100*e.b+"%)";break;case"rgba":r="rgba("+Math.round(255*e.r)+","+Math.round(255*e.g)+","+Math.round(255*e.b)+","+e.a+")";break;case"rgba%":r="rgba("+100*e.r+"%,"+100*e.g+"%,"+100*e.b+"%,"+100*e.a+"%)";break;case"hsv":r="hsv("+360*e.h+","+e.s+","+e.v+")";break;case"hsv%":r="hsv("+100*e.h+"%,"+100*e.s+"%,"+100*e.v+"%)";break;case"hsva":r="hsva("+360*e.h+","+e.s+","+e.v+","+e.a+")";break;case"hsva%":r="hsva("+100*e.h+"%,"+100*e.s+"%,"+100*e.v+"%,"+100*e.a+"%)";break;case"hsb":r="hsb("+e.h+","+e.s+","+e.v+")";break;case"hsb%":r="hsb("+100*e.h+"%,"+100*e.s+"%,"+100*e.v+"%)";break;case"hsba":r="hsba("+e.h+","+e.s+","+e.v+","+e.a+")";break;case"hsba%":r="hsba("+100*e.h+"%,"+100*e.s+"%,"+100*e.v+"%,"+100*e.a+"%)"}return r},t.strToColor=function(e){var t,r,i={a:1};if(null!=e.match(/^#[0-9a-f]{6}$/i)){if(isNaN(i.r=parseInt(e.substr(1,2),16)/255))return!1;if(isNaN(i.g=parseInt(e.substr(3,2),16)/255))return!1;if(isNaN(i.b=parseInt(e.substr(5,2),16)/255))return!1}else if(null!=e.match(/^[0-9a-f]{6}$/i)){if(isNaN(i.r=parseInt(e.substr(0,2),16)/255))return!1;if(isNaN(i.g=parseInt(e.substr(2,2),16)/255))return!1;if(isNaN(i.b=parseInt(e.substr(4,2),16)/255))return!1}else if(null!=e.match(/^rgba\s*\(\s*([0-9\.]+%|[01]?\.?[0-9]*)\s*,\s*([0-9\.]+%|[01]?\.?[0-9]*)\s*,\s*([0-9\.]+%|[01]?\.?[0-9]*)\s*,\s*([0-9\.]+%|[01]?\.?[0-9]*)\s*\)$/i)||null!=e.match(/^rgb\s*\(\s*([0-9\.]+%|[01]?\.?[0-9]*)\s*,\s*([0-9\.]+%|[01]?\.?[0-9]*)\s*,\s*([0-9\.]+%|[01]?\.?[0-9]*)\s*\)$/i)){if(r=null!=e.match(/a/i)?!0:!1,t=e.substring(e.indexOf("(")+1,e.indexOf(",")),"%"==t.charAt(t.length-1)){if(isNaN(i.r=parseFloat(t)/100))return!1}else if(isNaN(i.r=parseInt(t)/255))return!1;if(t=e.substring(e.indexOf(",")+1,e.indexOf(",",e.indexOf(",")+1)),"%"==t.charAt(t.length-1)){if(isNaN(i.g=parseFloat(t)/100))return!1}else if(isNaN(i.g=parseInt(t)/255))return!1;if(t=r?e.substring(e.indexOf(",",e.indexOf(",")+1)+1,e.lastIndexOf(",")):e.substring(e.lastIndexOf(",")+1,e.lastIndexOf(")")),"%"==t.charAt(t.length-1)){if(isNaN(i.b=parseFloat(t)/100))return!1}else if(isNaN(i.b=parseInt(t)/255))return!1;if(r)if(t=e.substring(e.lastIndexOf(",")+1,e.lastIndexOf(")")),"%"==t.charAt(t.length-1)){if(isNaN(i.a=parseFloat(t)/100))return!1}else if(isNaN(i.a=parseFloat(t)))return!1}else{if(null==e.match(/^hsva\s*\(\s*([0-9\.]+%|[01]?\.?[0-9]*)\s*,\s*([0-9\.]+%|[01]?\.?[0-9]*)\s*,\s*([0-9\.]+%|[01]?\.?[0-9]*)\s*,\s*([0-9\.]+%|[01]?\.?[0-9]*)\s*\)$/i)&&null==e.match(/^hsv\s*\(\s*([0-9\.]+%|[01]?\.?[0-9]*)\s*,\s*([0-9\.]+%|[01]?\.?[0-9]*)\s*,\s*([0-9\.]+%|[01]?\.?[0-9]*)\s*\)$/i)&&null==e.match(/^hsba\s*\(\s*([0-9\.]+%|[01]?\.?[0-9]*)\s*,\s*([0-9\.]+%|[01]?\.?[0-9]*)\s*,\s*([0-9\.]+%|[01]?\.?[0-9]*)\s*,\s*([0-9\.]+%|[01]?\.?[0-9]*)\s*\)$/i)&&null==e.match(/^hsb\s*\(\s*([0-9\.]+%|[01]?\.?[0-9]*)\s*,\s*([0-9\.]+%|[01]?\.?[0-9]*)\s*,\s*([0-9\.]+%|[01]?\.?[0-9]*)\s*\)$/i))return!1;if(r=null!=e.match(/a/i)?!0:!1,t=e.substring(e.indexOf("(")+1,e.indexOf(",")),"%"==t.charAt(t.length-1)){if(isNaN(i.h=parseFloat(t)/100))return!1}else if(isNaN(i.h=parseFloat(t)/360))return!1;if(t=e.substring(e.indexOf(",")+1,e.indexOf(",",e.indexOf(",")+1)),"%"==t.charAt(t.length-1)){if(isNaN(i.s=parseFloat(t)/100))return!1}else if(isNaN(i.s=parseFloat(t)))return!1;if(t=r?e.substring(e.indexOf(",",e.indexOf(",")+1)+1,e.lastIndexOf(",")):e.substring(e.lastIndexOf(",")+1,e.lastIndexOf(")")),"%"==t.charAt(t.length-1)){if(isNaN(i.v=parseFloat(t)/100))return!1}else if(isNaN(i.v=parseFloat(t)))return!1;if(r)if(t=e.substring(e.lastIndexOf(",")+1,e.lastIndexOf(")")),"%"==t.charAt(t.length-1)){if(isNaN(i.a=parseFloat(t)/100))return!1}else if(isNaN(i.a=parseFloat(t)))return!1}return i},t.hsvToRgb=function(e,t,r){var i=1/6>=e||e>=5/6?1:1/3>e?1-6*(e-1/6):e>4/6?6*(e-4/6):0,s=e>=1/6&&.5>=e?1:1/6>e?6*e:4/6>e?1-6*(e-.5):0,a=e>=.5&&5/6>=e?1:e>2/6&&.5>e?6*(e-2/6):e>5/6?1-6*(e-5/6):0,o=(i+(1-i)*(1-t))*r,n=(s+(1-s)*(1-t))*r,l=(a+(1-a)*(1-t))*r;return{r:o,g:n,b:l}},t.rgbToHsv=function(e,t,r){var i,s,a,o=Math.max(e,t,r),n=Math.min(e,t,r),l=o-n;return s=0!=o?l/o:0,i=0==l?0:e==o?(6+(t-r)/l)%6:t==o?2+(r-e)/l:r==o?4+(e-t)/l:0,i/=6,a=o,{h:i,s:s,v:a}},t.ColorPicker=function(r,i){this.input=r,this.color={h:0,s:0,v:1,r:1,g:1,b:1,a:1},this.setValue(this.input.value),this.options=e.extend(!0,{},t.defaults),this.setOptions(i),null==this.options.sliders&&(this.options.sliders="wvp"+(this.options.format.indexOf("a")>=0?"a":"")),this.init()},t.ColorPicker.widget=null,t.ColorPicker.overlay=null,t.ColorPicker.init=function(){if(1!=t.ColorPicker.init.hasInit){t.ColorPicker.init.hasInit=!0;var r=e('<div class="jQWCP-overlay" style="display: none;"></div>');r.on("click",t.Handler.overlay_click),t.ColorPicker.overlay=r.get(0),e("body").append(r);var i=t.ColorPicker.getWheelDataUrl(200);e("head").append('<style type="text/css">.jQWCP-wWheel {background: url('+i+") no-repeat center center;}</style>"),e("html").on("mouseup.wheelColorPicker",t.Handler.html_mouseup),e("html").on("touchend.wheelColorPicker",t.Handler.html_mouseup),e("html").on("mousemove.wheelColorPicker",t.Handler.html_mousemove),e("html").on("touchmove.wheelColorPicker",t.Handler.html_mousemove),e(window).on("resize.wheelColorPicker",t.Handler.window_resize)}},t.ColorPicker.createWidget=function(){var r=e("<div class='jQWCP-wWidget'><div class='jQWCP-wWheel'><div class='jQWCP-wWheelOverlay'></div><span class='jQWCP-wWheelCursor'></span></div><div class='jQWCP-wHue jQWCP-slider-wrapper'><canvas class='jQWCP-wHueSlider jQWCP-slider' width='1' height='50' title='Hue'></canvas><span class='jQWCP-wHueCursor jQWCP-scursor'></span></div><div class='jQWCP-wSat jQWCP-slider-wrapper'><canvas class='jQWCP-wSatSlider jQWCP-slider' width='1' height='50' title='Saturation'></canvas><span class='jQWCP-wSatCursor jQWCP-scursor'></span></div><div class='jQWCP-wVal jQWCP-slider-wrapper'><canvas class='jQWCP-wValSlider jQWCP-slider' width='1' height='50' title='Value'></canvas><span class='jQWCP-wValCursor jQWCP-scursor'></span></div><div class='jQWCP-wRed jQWCP-slider-wrapper'><canvas class='jQWCP-wRedSlider jQWCP-slider' width='1' height='50' title='Red'></canvas><span class='jQWCP-wRedCursor jQWCP-scursor'></span></div><div class='jQWCP-wGreen jQWCP-slider-wrapper'><canvas class='jQWCP-wGreenSlider jQWCP-slider' width='1' height='50' title='Green'></canvas><span class='jQWCP-wGreenCursor jQWCP-scursor'></span></div><div class='jQWCP-wBlue jQWCP-slider-wrapper'><canvas class='jQWCP-wBlueSlider jQWCP-slider' width='1' height='50' title='Blue'></canvas><span class='jQWCP-wBlueCursor jQWCP-scursor'></span></div><div class='jQWCP-wAlpha jQWCP-slider-wrapper'><canvas class='jQWCP-wAlphaSlider jQWCP-slider' width='1' height='50' title='Alpha'></canvas><span class='jQWCP-wAlphaCursor jQWCP-scursor'></span></div><div class='jQWCP-wPreview'><canvas class='jQWCP-wPreviewBox' width='1' height='1' title='Selected Color'></canvas></div></div>");return r.find(".jQWCP-wWheel, .jQWCP-slider-wrapper, .jQWCP-scursor, .jQWCP-slider").attr("unselectable","on").css("-moz-user-select","none").css("-webkit-user-select","none").css("user-select","none").css("-webkit-touch-callout","none"),r.on("contextmenu.wheelColorPicker",function(){return!1}),r.on("mousedown.wheelColorPicker",".jQWCP-wWheel",t.Handler.wheel_mousedown),r.on("touchstart.wheelColorPicker",".jQWCP-wWheel",t.Handler.wheel_mousedown),r.on("mousedown.wheelColorPicker",".jQWCP-wWheelCursor",t.Handler.wheelCursor_mousedown),r.on("touchstart.wheelColorPicker",".jQWCP-wWheelCursor",t.Handler.wheelCursor_mousedown),r.on("mousedown.wheelColorPicker",".jQWCP-slider",t.Handler.slider_mousedown),r.on("touchstart.wheelColorPicker",".jQWCP-slider",t.Handler.slider_mousedown),r.on("mousedown.wheelColorPicker",".jQWCP-scursor",t.Handler.sliderCursor_mousedown),r.on("touchstart.wheelColorPicker",".jQWCP-scursor",t.Handler.sliderCursor_mousedown),r.get(0)},t.ColorPicker.getWheelDataUrl=function(e){var t=e/2,r=t,i=document.createElement("canvas");i.width=e,i.height=e;for(var s=i.getContext("2d"),a=0;e>a;a++)for(var o=0;e>o;o++){var n=Math.sqrt(Math.pow(o-r,2)+Math.pow(a-r,2));if(!(n>t+2)){var l=((o-r==0?r>a?90:270:Math.atan((r-a)/(o-r))/Math.PI*180)+(r>o?180:0)+360)%360,d=n/t,h=(Math.abs(l+360)+60)%360<120?1:l>240?(120-Math.abs(l-360))/60:120>l?(120-l)/60:0,u=Math.abs(l-120)<60?1:Math.abs(l-120)<120?(120-Math.abs(l-120))/60:0,c=Math.abs(l-240)<60?1:Math.abs(l-240)<120?(120-Math.abs(l-240))/60:0,p=Math.round(255*(h+(1-h)*(1-d))),C=Math.round(255*(u+(1-u)*(1-d))),f=Math.round(255*(c+(1-c)*(1-d)));s.fillStyle="rgb("+p+","+C+","+f+")",s.fillRect(o,a,1,1)}}return i.toDataURL()},t.ColorPicker.prototype.options=null,t.ColorPicker.prototype.input=null,t.ColorPicker.prototype.widget=null,t.ColorPicker.prototype.color=null,t.ColorPicker.prototype.lastValue=null,t.ColorPicker.prototype.setOptions=function(r){if(r=e.extend(!0,{},r),this.options.htmlOptions)for(var i in t.defaults)this.input.hasAttribute("data-wcp-"+i)&&void 0===r[i]&&(r[i]=this.input.getAttribute("data-wcp-"+i),"true"==r[i]?r[i]=!0:"false"==r[i]&&(r[i]=!1));for(var i in r)if(void 0!==this.options[i]){var s=i.charAt(0).toUpperCase()+i.slice(1);"function"==typeof this["set"+s]?this["set"+s](r[i]):this.options[i]=r[i]}return this},t.ColorPicker.prototype.init=function(){if(t.ColorPicker.init(),1!=this.hasInit){this.hasInit=!0;var r=e(this.input),i=null;"block"==this.options.layout?(this.widget=t.ColorPicker.createWidget(),i=e(this.widget),i.data("jQWCP.instance",this),i.insertAfter(this.input),"inline"==r.css("display")?i.css("display","inline-block"):i.css("display",r.css("display")),i.append(this.input),r.hide(),void 0!=r.attr("tabindex")?i.attr("tabindex",r.attr("tabindex")):i.attr("tabindex",0),this.refreshWidget(),this.redrawSliders(!0),this.updateSliders(),i.on("focus.wheelColorPicker",t.Handler.widget_focus_block),i.on("blur.wheelColorPicker",t.Handler.widget_blur_block)):(null==t.ColorPicker.widget&&(t.ColorPicker.widget=t.ColorPicker.createWidget(),i=e(t.ColorPicker.widget),i.hide(),e("body").append(i),i.on("mousedown.wheelColorPicker",t.Handler.widget_mousedown_popup)),this.widget=t.ColorPicker.widget,r.on("focus.wheelColorPicker",t.Handler.input_focus_popup),r.on("blur.wheelColorPicker",t.Handler.input_blur_popup)),r.on("keyup.wheelColorPicker",t.Handler.input_change),"object"==typeof this.options.color?(this.setColor(this.options.color),this.options.color=void 0):"string"==typeof this.options.color&&(this.setValue(this.options.color),this.options.color=void 0),this.options.userinput?r.removeAttr("readonly"):r.attr("readonly",!0)}},t.ColorPicker.prototype.destroy=function(){var t=e(this.widget),r=e(this.input);"block"==this.options.layout&&(t.before(this.input),t.remove(),r.show()),r.off("focus.wheelColorPicker"),r.off("blur.wheelColorPicker"),r.off("keyup.wheelColorPicker"),r.off("change.wheelColorPicker"),r.data("jQWCP.instance",null),delete this},t.ColorPicker.prototype.refreshWidget=function(){var t=e(this.widget),r=this.options,i=!1;t.attr("class","jQWCP-wWidget"),"block"==r.layout&&t.addClass("jQWCP-block"),t.addClass(r.cssClass),window.innerWidth<=r.mobileWidth&&"block"!=r.layout&&(i=!0,t.addClass("jQWCP-mobile")),t.find(".jQWCP-wWheel, .jQWCP-slider-wrapper, .jQWCP-wPreview").hide().addClass("hidden");for(var s in r.sliders){var a=null;switch(this.options.sliders[s]){case"w":a=t.find(".jQWCP-wWheel");break;case"h":a=t.find(".jQWCP-wHue");break;case"s":a=t.find(".jQWCP-wSat");break;case"v":a=t.find(".jQWCP-wVal");break;case"r":a=t.find(".jQWCP-wRed");break;case"g":a=t.find(".jQWCP-wGreen");break;case"b":a=t.find(".jQWCP-wBlue");break;case"a":a=t.find(".jQWCP-wAlpha");break;case"p":a=t.find(".jQWCP-wPreview")}null!=a&&(a.appendTo(this.widget),a.show().removeClass("hidden"))}var o=50*r.quality;t.find(".jQWCP-slider").attr("height",o);var n=t.find(".jQWCP-wWheel, .jQWCP-slider-wrapper, .jQWCP-wPreview").not(".hidden");if(r.autoResize&&!i){var l=0;n.css({width:"",height:""}),n.each(function(t,r){var i=e(r);l+=parseFloat(i.css("margin-left").replace("px",""))+parseFloat(i.css("margin-right").replace("px",""))+i.outerWidth()}),t.css({width:l+"px"})}else{t.css({width:""});var d=t.find(".jQWCP-wWheel").not(".hidden"),h=t.find(".jQWCP-slider-wrapper, .jQWCP-wPreview").not(".hidden");if(d.css({height:t.height()+"px",width:t.height()}),d.length>0)var u=t.width()-d.outerWidth()-parseFloat(d.css("margin-left").replace("px",""))-parseFloat(d.css("margin-right").replace("px",""));else var u=t.width();if(h.length>0){var c=parseFloat(h.css("margin-left").replace("px",""))+parseFloat(h.css("margin-right").replace("px",""));h.css({height:t.height()+"px",width:(u-(h.length-1)*c)/h.length+"px"})}}return this},t.ColorPicker.prototype.redrawSliders=function(t){if(null==this.widget)return this;var r=e(this.widget);if("string"==typeof arguments[0]&&(t=arguments[1]),this!=r.data("jQWCP.instance"))return this;var i=this.options,s=this.color,a=1,o=50*i.quality,n=1,l=0,d=0,h=0,u=0,c=0,p=1;i.live&&(n=s.a,l=Math.round(255*s.r),d=Math.round(255*s.g),h=Math.round(255*s.b),u=s.h,c=s.s,p=s.v);var C=r.find(".jQWCP-wPreviewBox");if(!C.hasClass("hidden")){var f=C.get(0).getContext("2d");f.fillStyle="rgba("+l+","+d+","+h+","+n+")",f.clearRect(0,0,1,1),f.fillRect(0,0,1,1)}if(!this.options.live&&!t)return this;var g=r.find(".jQWCP-wAlphaSlider");if(!g.hasClass("hidden")||t){var v=g.get(0).getContext("2d"),w=v.createLinearGradient(0,0,0,o);w.addColorStop(0,"rgba("+l+","+d+","+h+",1)"),w.addColorStop(1,"rgba("+l+","+d+","+h+",0)"),v.fillStyle=w,v.clearRect(0,0,a,o),v.fillRect(0,0,a,o)}var P=r.find(".jQWCP-wRedSlider");if(!P.hasClass("hidden")||t){var W=P.get(0).getContext("2d"),b=W.createLinearGradient(0,0,0,o);b.addColorStop(0,"rgb(255,"+d+","+h+")"),b.addColorStop(1,"rgb(0,"+d+","+h+")"),W.fillStyle=b,W.fillRect(0,0,a,o)}var j=r.find(".jQWCP-wGreenSlider");if(!j.hasClass("hidden")||t){var Q=j.get(0).getContext("2d"),k=Q.createLinearGradient(0,0,0,o);k.addColorStop(0,"rgb("+l+",255,"+h+")"),k.addColorStop(1,"rgb("+l+",0,"+h+")"),Q.fillStyle=k,Q.fillRect(0,0,a,o)}var y=r.find(".jQWCP-wBlueSlider");if(!y.hasClass("hidden")||t){var m=y.get(0).getContext("2d"),S=m.createLinearGradient(0,0,0,o);S.addColorStop(0,"rgb("+l+","+d+",255)"),S.addColorStop(1,"rgb("+l+","+d+",0)"),m.fillStyle=S,m.fillRect(0,0,a,o)}var x=r.find(".jQWCP-wHueSlider");if(!x.hasClass("hidden")||t){var H=x.get(0).getContext("2d"),I=H.createLinearGradient(0,0,0,o);I.addColorStop(0,"#f00"),I.addColorStop(.166666667,"#ff0"),I.addColorStop(.333333333,"#0f0"),I.addColorStop(.5,"#0ff"),I.addColorStop(.666666667,"#00f"),I.addColorStop(.833333333,"#f0f"),I.addColorStop(1,"#f00"),H.fillStyle=I,H.fillRect(0,0,a,o)}var _=r.find(".jQWCP-wSatSlider");if(!_.hasClass("hidden")||t){var R=e.fn.wheelColorPicker.hsvToRgb(u,1,p);R.r=Math.round(255*R.r),R.g=Math.round(255*R.g),R.b=Math.round(255*R.b);var N=_.get(0).getContext("2d"),M=N.createLinearGradient(0,0,0,o);M.addColorStop(0,"rgb("+R.r+","+R.g+","+R.b+")"),M.addColorStop(1,"rgb("+Math.round(255*p)+","+Math.round(255*p)+","+Math.round(255*p)+")"),N.fillStyle=M,N.fillRect(0,0,a,o)}var O=r.find(".jQWCP-wValSlider");if(!O.hasClass("hidden")||t){var G=e.fn.wheelColorPicker.hsvToRgb(u,c,1);G.r=Math.round(255*G.r),G.g=Math.round(255*G.g),G.b=Math.round(255*G.b);var A=O.get(0).getContext("2d"),T=A.createLinearGradient(0,0,0,o);T.addColorStop(0,"rgb("+G.r+","+G.g+","+G.b+")"),T.addColorStop(1,"#000"),A.fillStyle=T,A.fillRect(0,0,a,o)}return this},t.ColorPicker.prototype.updateSliders=function(){if(null==this.widget)return this;var t=e(this.widget),r=this.color;if(this!=t.data("jQWCP.instance"))return this;var i=t.find(".jQWCP-wWheel");if(!i.hasClass("hidden")){var s=t.find(".jQWCP-wWheelCursor"),a=t.find(".jQWCP-wWheelOverlay"),o=Math.cos(2*Math.PI*r.h)*r.s,n=Math.sin(2*Math.PI*r.h)*r.s,l=i.width()/2,d=i.height()/2;s.css("left",l+o*i.width()/2+"px"),s.css("top",d-n*i.height()/2+"px"),1==this.options.preserveWheel||null==this.options.preserveWheel&&0==this.options.live?a.css("opacity",0):a.css("opacity",1-(r.v<.2?.2:r.v))}var h=t.find(".jQWCP-wHueSlider");if(!h.hasClass("hidden")){var u=t.find(".jQWCP-wHueCursor");u.css("top",r.h*h.height()+"px")}var c=t.find(".jQWCP-wSatSlider");if(!c.hasClass("hidden")){var p=t.find(".jQWCP-wSatCursor");p.css("top",(1-r.s)*c.height()+"px")}var C=t.find(".jQWCP-wValSlider");if(!C.hasClass("hidden")){var f=t.find(".jQWCP-wValCursor");f.css("top",(1-r.v)*C.height()+"px")}var g=t.find(".jQWCP-wRedSlider");if(!g.hasClass("hidden")){var v=t.find(".jQWCP-wRedCursor");v.css("top",(1-r.r)*g.height()+"px")}var w=t.find(".jQWCP-wGreenSlider");if(!w.hasClass("hidden")){var P=t.find(".jQWCP-wGreenCursor");P.css("top",(1-r.g)*w.height()+"px")}var W=t.find(".jQWCP-wBlueSlider");if(!W.hasClass("hidden")){var b=t.find(".jQWCP-wBlueCursor");b.css("top",(1-r.b)*W.height()+"px")}var j=t.find(".jQWCP-wAlphaSlider");if(!j.hasClass("hidden")){var Q=t.find(".jQWCP-wAlphaCursor");Q.css("top",(1-r.a)*j.height()+"px")}return this},t.ColorPicker.prototype.updateSelection=function(){return this.redrawSliders(),this.updateSliders(),this},t.ColorPicker.prototype.updateInput=function(){if(null==this.widget)return this;var r=e(this.input);this.input.value=this.getValue(),this.options.preview&&(r.css("background",t.colorToStr(this.color,"rgba")),this.color.v>.5?r.css("color","black"):r.css("color","white"))},t.ColorPicker.prototype.updateActiveControl=function(r){var i=e(e("body").data("jQWCP.activeControl"));if(0!=i.length){var s=(e(this.input),this.options),a=this.color;if(void 0==r.pageX&&r.originalEvent.touches.length>0&&(r.pageX=r.originalEvent.touches[0].pageX,r.pageY=r.originalEvent.touches[0].pageY),i.hasClass("jQWCP-wWheel")){var o=i.find(".jQWCP-wWheelCursor"),n=(i.find(".jQWCP-wWheelOverlay"),(r.pageX-i.offset().left-i.width()/2)/(i.width()/2)),l=-(r.pageY-i.offset().top-i.height()/2)/(i.height()/2);if(t.BUG_RELATIVE_PAGE_ORIGIN)var n=(r.pageX-(i.get(0).getBoundingClientRect().left-t.ORIGIN.left)-i.width()/2)/(i.width()/2),l=-(r.pageY-(i.get(0).getBoundingClientRect().top-t.ORIGIN.top)-i.height()/2)/(i.height()/2);var d=Math.sqrt(Math.pow(n,2)+Math.pow(l,2));d>1&&(d=1),s.snap&&d<s.snapTolerance&&(d=0);var h=0==n&&0==l?0:Math.atan(l/n)/(2*Math.PI);0>h&&(h+=.5),0>l&&(h+=.5),this.setHsv(h,d,a.v)}else if(i.hasClass("jQWCP-slider-wrapper")){var o=i.find(".jQWCP-scursor"),l=(r.pageY-i.offset().top)/i.height();if(t.BUG_RELATIVE_PAGE_ORIGIN)var l=(r.pageY-(i.get(0).getBoundingClientRect().top-t.ORIGIN.top))/i.height();var u=0>l?0:l>1?1:l;s.snap&&u<s.snapTolerance?u=0:s.snap&&u>1-s.snapTolerance&&(u=1),s.snap&&u>.5-s.snapTolerance&&u<.5+s.snapTolerance&&(u=.5),o.css("top",u*i.height()+"px"),i.hasClass("jQWCP-wRed")&&this.setRgb(1-u,a.g,a.b),i.hasClass("jQWCP-wGreen")&&this.setRgb(a.r,1-u,a.b),i.hasClass("jQWCP-wBlue")&&this.setRgb(a.r,a.g,1-u),i.hasClass("jQWCP-wHue")&&this.setHsv(u,a.s,a.v),i.hasClass("jQWCP-wSat")&&this.setHsv(a.h,1-u,a.v),i.hasClass("jQWCP-wVal")&&this.setHsv(a.h,a.s,1-u),i.hasClass("jQWCP-wAlpha")&&this.setAlpha(1-u)}}},t.ColorPicker.prototype.getColor=function(){return this.color},t.ColorPicker.prototype.getValue=function(e){var r=this.options;return null==e&&(e=r.format),r.rounding>=0&&(this.color.a=Math.round(this.color.a*Math.pow(10,r.rounding))/Math.pow(10,r.rounding)),t.colorToStr(this.color,e)},t.ColorPicker.prototype.setValue=function(e){var r=t.strToColor(e);return r?this.setColor(r):this},t.ColorPicker.prototype.setColor=function(e){return"string"==typeof e?this.setValue(e):null!=e.r?this.setRgba(e.r,e.g,e.b,e.a):null!=e.h?this.setHsva(e.h,e.s,e.v,e.a):null!=e.a?this.setAlpha(e.a):this},t.ColorPicker.prototype.setRgba=function(e,r,i,s){var a=this.color;a.r=e,a.g=r,a.b=i,null!=s&&(a.a=s);var o=t.rgbToHsv(e,r,i);return a.h=o.h,a.s=o.s,a.v=o.v,this.updateSliders(),this.redrawSliders(),this.updateInput(),this},t.ColorPicker.prototype.setRgb=function(e,t,r){return this.setRgba(e,t,r,null)},t.ColorPicker.prototype.setHsva=function(e,r,i,s){var a=this.color;a.h=e,a.s=r,a.v=i,null!=s&&(a.a=s);var o=t.hsvToRgb(e,r,i);return a.r=o.r,a.g=o.g,a.b=o.b,this.updateSliders(),this.redrawSliders(),this.updateInput(),this},t.ColorPicker.prototype.setHsv=function(e,t,r){return this.setHsva(e,t,r,null)},t.ColorPicker.prototype.setAlpha=function(e){return this.color.a=e,this.updateSliders(),this.redrawSliders(),this.updateInput(),this},t.ColorPicker.prototype.show=function(){var r=this.input,i=e(r),s=e(this.widget),a=this.options;if("popup"==a.layout&&(s.data("jQWCP.instance",this),s.stop(!0,!0),s.css({top:r.getBoundingClientRect().top-t.ORIGIN.top+i.outerHeight()+"px",left:r.getBoundingClientRect().left-t.ORIGIN.left+"px"}),this.refreshWidget(),this.redrawSliders(),this.updateSliders(),this.lastValue=r.value,s.fadeIn(a.animDuration),a.hideKeyboard&&(i.blur(),e(t.ColorPicker.overlay).show()),s.hasClass("jQWCP-mobile"))){var o=e("html").scrollTop(),n=r.getBoundingClientRect().top-t.ORIGIN.top;o>n?e("html").animate({scrollTop:n}):n+i.outerHeight()>o+window.innerHeight-s.outerHeight()&&e("html").animate({scrollTop:n+i.outerHeight()-window.innerHeight+s.outerHeight()})}},t.ColorPicker.prototype.hide=function(){var r=e(this.widget);this==r.data("jQWCP.instance")&&(r.fadeOut(this.options.animDuration),e(t.ColorPicker.overlay).hide())},t.Handler={},t.Handler.input_focus_popup=function(t){var r=e(this).data("jQWCP.instance");r.show()},t.Handler.input_blur_popup=function(t){var r=e(this).data("jQWCP.instance");r.options.hideKeyboard||(r.hide(),r.lastValue!=this.value&&e(this).trigger("change"))},t.Handler.input_change=function(r){var i=e(this).data("jQWCP.instance"),s=t.strToColor(this.value);s&&i.setColor(s)},t.Handler.widget_focus_block=function(t){var r=e(this).data("jQWCP.instance"),i=e(r.input);r.lastValue=r.input.value,i.triggerHandler("focus")},t.Handler.widget_mousedown_popup=function(t){var r=e(this).data("jQWCP.instance"),i=e(r.input);if(i.off("focus.wheelColorPicker"),i.off("blur.wheelColorPicker"),void 0!=i.data("events"))var s=i.data("events").blur;else var s=void 0;var a={blur:[]};if(void 0!=s)for(var o=0;o<s.length;o++)a.blur.push(s[o]);i.data("jQWCP.suspendedEvents",a)},t.Handler.widget_blur_block=function(t){var r=e(this).data("jQWCP.instance"),i=e(r.input);r.lastValue!=r.input.value&&i.trigger("change"),i.triggerHandler("blur")},t.Handler.wheelCursor_mousedown=function(t){var r=e(this),i=r.closest(".jQWCP-wWidget"),s=i.data("jQWCP.instance"),a=e(s.input);e("body").data("jQWCP.activeControl",r.parent().get(0)),a.trigger("sliderdown")},t.Handler.wheel_mousedown=function(t){var r=e(this),i=r.closest(".jQWCP-wWidget"),s=i.data("jQWCP.instance"),a=e(s.input);e("body").data("jQWCP.activeControl",r.get(0)),a.trigger("sliderdown")},t.Handler.slider_mousedown=function(t){var r=e(this),i=r.closest(".jQWCP-wWidget"),s=i.data("jQWCP.instance"),a=e(s.input);e("body").data("jQWCP.activeControl",r.parent().get(0)),a.trigger("sliderdown")},t.Handler.sliderCursor_mousedown=function(t){var r=e(this),i=r.closest(".jQWCP-wWidget"),s=i.data("jQWCP.instance"),a=e(s.input);e("body").data("jQWCP.activeControl",r.parent().get(0)),a.trigger("sliderdown")},t.Handler.html_mouseup=function(r){var i=e(e("body").data("jQWCP.activeControl"));if(0!=i.length){var s=i.closest(".jQWCP-wWidget"),a=s.data("jQWCP.instance"),o=e(a.input);if("popup"==a.options.layout){a.options.hideKeyboard||o.trigger("focus.jQWCP_DONT_TRIGGER_EVENTS"),o.on("focus.wheelColorPicker",t.Handler.input_focus_popup),o.on("blur.wheelColorPicker",t.Handler.input_blur_popup);var n=o.data("jQWCP.suspendedEvents");if(void 0!=n)for(var l=n.blur,d=0;d<l.length;d++)o.on("blur"+(""==l[d].namespace?"":"."+l[d].namespace),l[d].handler)}0!=i.length&&(void 0!=r.pageX&&a.updateActiveControl(r),e("body").data("jQWCP.activeControl",null),o.trigger("sliderup"))}},t.Handler.html_mousemove=function(t){var r=e(e("body").data("jQWCP.activeControl"));if(0!=r.length){t.preventDefault();var i=r.closest(".jQWCP-wWidget"),s=i.data("jQWCP.instance"),a=e(s.input);return s.updateActiveControl(t),a.trigger("slidermove"),!1}},t.Handler.window_resize=function(t){var r=e("body .jQWCP-wWidget.jQWCP-block");r.each(function(){var t=e(this).data("jQWCP.instance");t.refreshWidget(),t.redrawSliders()})},t.Handler.overlay_click=function(r){if(null!=t.ColorPicker.widget){var i=e(t.ColorPicker.widget),s=i.data("jQWCP.instance");if(null!=s){var a=e(s.input);s.lastValue!=s.input.value&&a.trigger("change"),s.hide()}}},e(document).ready(function(){e("[data-wheelcolorpicker]").wheelColorPicker({htmlOptions:!0})}),function(){void 0!=e.browser&&e.browser.mozilla&&(e.fn.wheelColorPicker.defaults.quality=.2),e(document).ready(function(){e("body").append('<div id="jQWCP-PageOrigin" style="position: absolute; top: 0; left: 0; height: 0; width: 0;"></div>');var r=document.getElementById("jQWCP-PageOrigin").getBoundingClientRect();t.ORIGIN=r,e(window).on("scroll.jQWCP_RelativePageOriginBugFix",function(){var e=document.getElementById("jQWCP-PageOrigin").getBoundingClientRect();t.ORIGIN=e,(0!=e.left||0!=e.top)&&(t.BUG_RELATIVE_PAGE_ORIGIN=!0)})})}()}(jQuery);
