var MAX_HUE=360;var MAX_SATURATION=100;var MAX_VALUE=100;var HUE_BOX_HEIGHT=165;var WIDTH_SV_BOX=166;var SV_SLIDER_CENTER=4;var HUE_SLIDER_CENTER=2;var INITIAL_COLOR="0084ff";var mouse_up=1;var slide_hsv;function initialize_color_picker(){print_hue_box();set_hex_color(INITIAL_COLOR)}function print_hue_box(){var B="";for(var A=HUE_BOX_HEIGHT;A>=0;A--){B+='<div style="BACKGROUND: #'+hsv2hex([Math.round((360/HUE_BOX_HEIGHT)*A),100,100])+';"><br /></div>'}jQuery("#hue_box").html(B)}function position2hsv(C,A,D){var B=Math.round((D/A)*C);B=check_boundaries(B,0,C);return(B)}function event_position_in_element(B,D,C){var A=event_position_in_document(B)-D;var E=event_position_in_document(B,1)-C;return([A,E])}function check_boundaries(A,B,C){if(A>C){return(C)}else{if(A<B){return(B)}}return(A)}function draw_sliders(B){var A=Math.round(slide_hsv[1]/MAX_SATURATION*WIDTH_SV_BOX);var D=Math.round(WIDTH_SV_BOX-slide_hsv[2]/MAX_VALUE*WIDTH_SV_BOX);var C=Math.round(HUE_BOX_HEIGHT-slide_hsv[0]/MAX_HUE*HUE_BOX_HEIGHT);jQuery("#saturation_value_slider").css("left",(A-SV_SLIDER_CENTER)+"px");jQuery("#saturation_value_slider").css("top",(D-SV_SLIDER_CENTER)+"px");jQuery("#hue_slider").css("top",(C-HUE_SLIDER_CENTER-5)+"px")}function mouse_action(C,B,F){var G;var D;function E(J){if(!mouse_up){var I=event_position_in_element(J,G,D);if(C=="saturation_value_slider"){var H=check_boundaries(I[0],0,WIDTH_SV_BOX);var K=check_boundaries(I[1],0,WIDTH_SV_BOX);slide_hsv[1]=position2hsv(MAX_SATURATION,WIDTH_SV_BOX,H);slide_hsv[2]=MAX_VALUE-position2hsv(MAX_VALUE,WIDTH_SV_BOX,K);update_new_color()}else{if(C=="hue_slider"){var K=check_boundaries(I[1],0,HUE_BOX_HEIGHT);slide_hsv[0]=MAX_HUE-position2hsv(MAX_HUE,HUE_BOX_HEIGHT,K);update_new_color()}}}}if(mouse_up){mouse_up=0;var A=jQuery("#"+B).offset();G=A.left+10;D=A.top+22;document.onmousemove=E;document.onmouseup=function(){mouse_up=1;document.onmousemove="";document.onmouseup=""};E(F)}pen_selected();return(false)}function color_popup(){var A=window.prompt("Color in hex format:",hsv2hex(slide_hsv));var B=/^[0-9a-f]{6}$/i;if(B.test(A)){set_hex_color(A)}}function set_hex_color(A){slide_hsv=rgb2hsv(hex2rgb(A));update_new_color()}function update_new_color(){jQuery("#sv_box").css("backgroundColor","#"+hsv2hex([slide_hsv[0],100,100]));draw_sliders(slide_hsv);var A=hsv2hex(slide_hsv);jQuery("#color_hex_string").html(A);jQuery("#current_color_box").css("background","#"+A);jQuery("#big_current_color_box").css("background","#"+A);change_last_used_colors();return(A)}function int2hex(A){A=Math.round(Math.min(Math.max(0,A),255));return("0123456789ABCDEF".charAt((A-A%16)/16)+"0123456789ABCDEF".charAt(A%16))}function rgb2hex(A){return(int2hex(A[0])+int2hex(A[1])+int2hex(A[2]))}function hex2rgb(B){var D=single_hex2int(B.charAt(0))*16+single_hex2int(B.charAt(1));var C=single_hex2int(B.charAt(2))*16+single_hex2int(B.charAt(3));var A=single_hex2int(B.charAt(4))*16+single_hex2int(B.charAt(5));return([D,C,A])}function single_hex2int(A){if((A=="a")||(A=="A")){return(10)}else{if((A=="b")||(A=="B")){return(11)}else{if((A=="c")||(A=="C")){return(12)}else{if((A=="d")||(A=="D")){return(13)}else{if((A=="e")||(A=="E")){return(14)}else{if((A=="f")||(A=="F")){return(15)}else{if((A>=0)&&(A<10)){return(parseInt(A,10))}}}}}}}}function hsv2hex(A){return(rgb2hex(hsv2rgb(A)))}function hsv2rgb(P){var L;var N;var E;var M=P[0]/360;var K=P[1]/100;var J=P[2]/100;if(K>0){if(M>=1){M=0}M=6*M;var O=M-Math.floor(M);var I=Math.round(255*J*(1-K));E=Math.round(255*J*(1-(K*O)));var D=Math.round(255*J*(1-(K*(1-O))));J=Math.round(255*J);switch(Math.floor(M)){case 0:L=J;N=D;E=I;break;case 1:L=E;N=J;E=I;break;case 2:L=I;N=J;E=D;break;case 3:L=I;N=E;E=J;break;case 4:L=D;N=I;E=J;break;case 5:L=J;N=I;E=E;break}return([L?L:0,N?N:0,E?E:0])}else{return([(J=Math.round(J*255)),J,J])}}function rgb2hsv(J){var I=(J[0]/255);var A=(J[1]/255);var D=(J[2]/255);var G=Math.min(I,A,D);var N=Math.max(I,A,D);var K=N-G;var B=N;var M;var E;if(K===0){M=0;E=0}else{E=K/N;var L=(((N-I)/6)+(K/2))/K;var C=(((N-A)/6)+(K/2))/K;var F=(((N-D)/6)+(K/2))/K;if(I==N){M=F-C}else{if(A==N){M=(1/3)+L-F}else{if(D==N){M=(2/3)+C-L}}}if(M<0){M+=1}if(M>1){M-=1}}return([M*MAX_HUE,E*MAX_SATURATION,B*MAX_VALUE])}function agent(A){return(Math.max(navigator.userAgent.toLowerCase().indexOf(A),0))}function event_position_in_document(B,A){var C=agent("msie")?[event.clientX+document.body.scrollLeft,event.clientY+document.body.scrollTop]:[B.pageX,B.pageY];return(C[zero(A)])}function zero(A){A=parseInt(A,10);return(!isNaN(A)?A:0)};