var COLOR_PICKER_Z_LAYER=1001;var no_color_value="a very unlikey string";var is_no_color=function(A){return(A===null)||(A==no_color_value)||(A==="")};function is_rgba_string(A){return($type(A)=="string")&&(A.length==8)&&!isNaN(parseInt(A,16))}function is_rgb_string(C){var A="0123456789abcdef";if($type(C)!="string"){return false}if(C.charAt(0)=="#"){C=C.substring(1)}if(C.length!=6){return false}for(var B=0;B<6;B++){if(A.indexOf(C.charAt(B))==-1){return false}}return true}function popMagic(A,D){var C=A.getTop();var B=A.getLeft();D.setStyle("display","block");D.setStyle("left",B-50);D.setStyle("top",C);D.getFirst().addEvent("click",function(){D.setStyle("display","none")})}function showAttach2(N,K,M,L){var E=0;if($chk(M)){$("radius").value=M-1;E=M-1}else{$("radius").value=""}var J=$E("div",N);var C=$(K);var F=$(N);F.setStyle("display","block");var I=C.getCoordinates([$("scroller")]);var A=F.getCoordinates([$("scroller")]);var B=J.getCoordinates([$("scroller")]);F.setStyle("left",I.right);F.setStyle("top",I.top-B.height+40);var D=$("radiuspopupHolder").getElement("[id=cancel]");var H=$("radiuspopupHolder").getElement("[id=ok]");D.removeEvents("click");H.removeEvents("click");var G=new Slider($("radius-slider"),$("radius-handle"),{steps:7,onChange:function(O){$("radius").setHTML(parseInt(O,10)+1)}}).set(E);D.addEvent("click",function(O){O.setStyle("display","none")}.pass(F));H.addEvent("click",function(Q,O,P){Q.setStyle("display","none");if(P&&($type(P)=="function")){P(O.innerHTML)}}.pass([N,$("radius"),L]))}function hexToPct(C){var B=parseInt(C,16);var A=B/255;return A}function pctToHex(A){var C=(A*255).toInt();var B=C.toString(16);if(B.length==1){return"0"+B}else{return B}}var SVGHelper=new Class({create:function(B,D,A){var C;if(window.gecko){C=new Element("embed")}else{if(window.webkit){C=new Element("img")}}console.assert(C,"el not set");C.setProperties({"height":D,"width":A,"src":B});return C}});var normalizeColor=function(A){if(A===null||A===""){return no_color_value}return A};var sliders={"linewidth":null,"opacity":null,"radius":null};var initialize_sliders=function(M,O){var K=$("opacity-slider");var F=$("opacity-handle");var N=$("opPercent");if((sliders.opacity===null)&&K){var L=new Slider(K,F,{steps:100,onChange:function(P){N.setHTML(P)}});sliders.opacity=L}if($type(M.opacity)=="number"){sliders.opacity.set(M.opacity)}var A=dollar("radius-slider");var E=dollar("radius-handle");var I=dollar("radius-size-pixel");var C=dollar("radius-size");if(typeof console!="undefined"){console.log("radius display:",A.getStyle("display"));console.log("radius wrapper display:",C.getStyle("display"))}if((sliders.radius===null)&&A&&(C.getStyle("display")!=="none")){var J=new Slider(A,E,{"steps":39,"onChange":function(Q){if(isNaN(Q)){if(typeof console!="undefined"){console.log("step was NaN")}}var R;if((O.max_radius-O.min_radius)==39){R=Q+O.min_radius;I.setHTML(R)}else{if(typeof console!="undefined"){console.log("step:",Q)}var P=O.max_radius-O.min_radius;R=(O.min_radius+(P*(Q/40))).toInt();if(isNaN(R)){if(typeof console!="undefined"){console.log("NaN! step: "+Q+" span: "+P)}}else{I.setHTML(R)}}}});sliders.radius=J}if(($type(M.radius)=="number")&&(sliders.radius!==null)){sliders.radius.set(M.radius)}var H=dollar("linewidth-slider");var B=dollar("linewidth-handle");var G=dollar("linewidth-pixel");if((sliders.linewidth===null)&&H){var D=new Slider(H,B,{"steps":5,"onChange":function(Q){var P=4;var R=(1+(P*(Q/5))).toInt();G.setHTML(R)}});sliders.linewidth=D}if($type(M.linewidth)=="number"){sliders.linewidth.set(M.linewidth)}};var newStyle={line:"",fill:""};var ColorPickerMgr=new Class({options:{overflown:[$("scroller")],polyline:true,polygon:true,point:true,min_radius:1,max_radius:40,bearing:null},initialize:function(A){if(typeof console!="undefined"){console.log("color picker options:",A)}this.setOptions(A);this.atchElt=$(A.atchElt);this.toElt=$(A.toElt);this.fill=normalizeColor(A.fill);this.stroke=normalizeColor(A.stroke);if(typeof console!="undefined"){console.log(this.fill,this.stroke,this.opacity);console.assert(is_rgba_string(this.fill)||is_no_color(this.fill)||(is_rgb_string(this.fill)&&(this.options.opacity!==null)),"invalid fill: "+this.fill+" opacity: "+this.options.opacity);console.assert(is_rgba_string(this.stroke)||is_no_color(this.stroke)||(is_rgb_string(this.stroke)&&(this.options.opacity!==null)),"invalid stroke")}this.callbackfunc=A.callbackfunc;this.suffix=A.suffix;this.customPicker=get_custom_picker();this.visible=false;this.configure()},configure:function(){if(this.options.point||this.options.polygon){$("fill").setStyle("display","block")}else{$("fill").setStyle("display","none")}var C=dollar("pattern-palette");var B=dollar("pattern-line");var E=$("symbol-palette");var A=$("symbol-line");var D=$("radius-size");if(this.options.point){if(E){E.setStyle("display","block")}if(A){A.setStyle("display","block")}if(D){D.setStyle("display","block")}if(C){C.setStyle("display","block")}if(B){B.setStyle("display","block")}if(C){C.setStyle("display","none")}if(B){B.setStyle("display","none")}}else{if(this.options.polyline){if(E){E.setStyle("display","none")}if(A){A.setStyle("display","none")}if(D){D.setStyle("display","none")}if(C){C.setStyle("display","none")}if(B){B.setStyle("display","none")}}else{if(this.options.polygon){if(E){E.setStyle("display","none")}if(A){A.setStyle("display","none")}if(D){D.setStyle("display","none")}if(C){C.setStyle("display","block")}if(B){B.setStyle("display","block")}}}}if(this.options.bearing===null){$("bearing-row").setStyle("display","none")}else{$("bearing-row").setStyle("display","block");$("show-bearing").setProperty("checked",this.options.bearing)}},hide:function(){this.atchElt.setStyles({"display":"none","visibility":"hidden"});this.visible=false;if(typeof console!="undefined"){console.log("clearing custom color handler")}this.customPicker.removeEvent("onChange",this.customColorHandler);this.customColorHandler=null},show:function(){var X=[];var a=this.suffix||"";var h,Q;if(!is_no_color(this.fill)){h=this.fill.substr(0,6);Q=this.fill.substr(6,2)||"ff"}else{Q="ff"}var M,V;if(!is_no_color(this.stroke)){M=this.stroke.substr(0,6);V=this.stroke.substr(6,2)||"ff"}else{V="ff"}var D=V;var O=(hexToPct(Q)*100).toInt();var L=$E("div",this.atchElt);var d;if(is_no_color(this.fillcolor)){d=""}else{d=h}newStyle.fill=d;if(is_no_color(this.fill)){dollar("fill-color").setStyle("background-color","");dollar("fill-color").addClass("no-color")}else{$("fill-color").setStyle("background-color","#"+h);dollar("fill-color").removeClass("no-color")}var Y;if($defined($("line-color"))){if(is_no_color(this.strokecolor)){Y=""}else{Y=M}newStyle.line=M;if(is_no_color(this.stroke)){$("line-color").setStyle("background-color","");dollar("line-color").addClass("no-color")}else{$("line-color").setStyle("background-color","#"+M);dollar("line-color").removeClass("no-color")}}var f=0;$("picker-fill").addEvent("click",function(){f=0;$("picker-fill").setStyle("border","2px solid #000");$("picker-border").setStyle("border","1px solid #e5e5e5")}.bind(this));$("picker-fill").setStyle("border","1px solid #e5e5e5");if($defined($("picker-border"))){$("picker-border").addEvent("click",function(){f=1;$("picker-border").setStyle("border","2px solid #000");$("picker-fill").setStyle("border","1px solid #e5e5e5")}.bind(this))}if(this.options.polygon||this.options.point){$("picker-fill").fireEvent("click")}else{$("picker-border").fireEvent("click")}function K(n){var r=getSymbolPalettes();if(r){var q,o;for(var l in r){if(r.hasOwnProperty(l)){q=l;for(var m=0;m<r[l].length;m++){o=r[l][m];if($type(o)=="object"&&(o.symbol==n)){return[q,m]}else{if($type(o)=="string"&&o==n){return[q,m]}}}}}}return null}if(this.options.symbol){set_preview_symbol(this.options.symbol);var P=K(this.options.symbol);if(typeof console!=="undefined"){console.log("result:",P)}if(P&&P.length==2){var c=$("select-symbol");if(c){for(var Z=0;Z<c.options.length;Z++){if(c.options[Z].value==P[0]){c.selectedIndex=Z;c.fireEvent("change");break}}X.push(function(){$$("#symbol-options img")[P[1]].fireEvent("click")})}}}if(this.options.pattern){set_preview_pattern(this.options.pattern)}function F(){var k=dollar("fill-color");var e=dollar("line-color");if(this.hasClass("no-color")){if(f===0){k.setStyle("background","");k.addClass("no-color")}else{e.setStyle("background","");e.addClass("no-color")}}else{var j=this.getStyle("background-color");if(f===0){k.removeClass("no-color");k.setStyle("background-color",j)}else{e.removeClass("no-color");e.setStyle("background-color",j)}}g()}function A(j){var k=dollar("fill-color");var e=dollar("line-color");if(f===0){k.removeClass("no-color");k.setStyle("background-color",j.hex)}else{e.removeClass("no-color");e.setStyle("background-color",j.hex)}g()}this.customPicker.addEvent("onChange",A);this.customColorHandler=A;function C(e){var k=$ES("td","picker-palette");for(i=0;i<k.length;i++){var l=k[i];if(e[i]===null||e[i]===""){l.addClass("no-color");l.setStyle("background-color","")}else{l.removeClass("no-color");var j="#"+e[i];l.setStyle("background-color",j)}l.onclick=F.bindAsEventListener(l)}}var H=null;var b=function(){var j=$("select-palette").value;if(H===null){H=j}else{if(H!=j){var m=dollar("popupHolder").getCoordinates();var l=dollar("popupHolder").effect("top",{"duration":500});var o=53;var k=function(){l.start(m.top,m.top-o)};var n=function(){l.start(m.top,m.top+o)};if(H=="custom"){if(j!="custom"){n()}}else{if(j=="custom"){k()}}H=j}}if(j=="custom"){console.log("show custom picker");dollar("simple-color-palette").setStyle("display","none");this.customPicker.layout.getParent().setStyle("display","block");this.customPicker.show()}else{this.customPicker.layout.getParent().setStyle("display","none");this.customPicker.hide();dollar("simple-color-palette").setStyle("display","");var e=this.options.palettes[j];C(e)}}.bindAsEventListener(this);$("select-palette").onchange=b;if(this.options.selectedColorPalette!==null){var J=$("select-palette").options;for(var Z=0,U=J.length;Z<U;Z++){if(J[Z].value==this.options.selectedColorPalette){J[Z].selected="selected";break}}}b();var E=26;var S=16;function g(){lineWeight=1;var l=dollar("fill-color");var e=dollar("line-color");if(l){if(l.hasClass("no-color")){d=""}else{d=$("fill-color").getStyle("background-color")}newStyle.fill=d}if(e){if(e.hasClass("no-color")){Y=""}else{Y=$("line-color").getStyle("background-color")}newStyle.line=Y}var j=lineWeight*2;var k={background:d,borderStyle:"solid",borderWidth:lineWeight+"px",borderColor:Y,width:(E-j)+"px",height:(S-j)+"px"};$("palette-final").setStyles(k)}g();$("btn-ok").onclick=function(){var e=newStyle.line;var j=newStyle.fill;var l={};var q=$("opPercent").innerHTML.toInt()/100;if(q<0.1){q=0.1}V=pctToHex(q);var o=$("opPercent").innerHTML.toInt()/100;Q=pctToHex(o);if(e===""){l["stroke"+a]=no_color_value}else{l["stroke"+a]=e.substr(1)+V}if(j===""){l["fill"+a]=no_color_value}else{l["fill"+a]=j.substr(1)+Q}if(this.options.point){var m=dollar("radius-size-pixel").innerHTML.toInt();var k=dollar("selected-symbol").getProperty("value");l["radius"+a]=m;l["symbol"]=k}if(this.options.point||this.options.polygon){var n=dollar("selected-pattern").getProperty("value");l["pattern"]=n}var p=dollar("linewidth-pixel").innerHTML.toInt();l["linewidth"+a]=p;if(this.options.bearing!==null){l.bearing=$("show-bearing").getProperty("checked")}this.hide();this.callbackfunc(l)}.bindAsEventListener(this);$("btn-cancel").onclick=function(){this.hide()}.bindAsEventListener(this);var T=this.toElt;var I=T.getCoordinates(this.options.overflown);var W=this.atchElt;var B=L;W.setStyles({"display":"block","visbility":"hidden"});initialize_sliders({"linewidth":this.options.linewidth,"radius":this.options.radius,"opacity":O},this.options);var N=W.getCoordinates(this.options.overflown);var G=B.getCoordinates(this.options.overflown);var R={position:"absolute",left:I.right,top:I.top-G.height+12+$("scroller").getSize().scroll.y,"zIndex":COLOR_PICKER_Z_LAYER,"visibility":"visible"};if(typeof console!="undefined"){console.log("positioning @",R);console.log("picker coords:",G.height)}W.setStyles(R);for(var Z=0;Z<X.length;Z++){X[Z]()}this.visible=true}});ColorPickerMgr.implement(new Options());function showColorPicker(G,C,J,K,F,I,E){$("scroller").adopt($(G));var A={"atchElt":G,"toElt":C,"fill":J,"stroke":K,"callbackfunc":F,"suffix":I,"overflown":[$("scroller")],"polyline":false,"polygon":false,"point":true,"linewidth":1,"radius":10,"symbol":null,"pattern":"solid","opacity":null,"palettes":{},"selectedColorPalette":null};var D=$merge(A,E);try{var H=new ColorPickerMgr(D)}catch(B){console.log("ERROR");console.log(B)}H.show()}function showAttributeInfo(C,G,F){C.setStyle("display","block");var E=$E(".attrinfo_interior",C);var B=$E(".attrinfo_close",C);B.onclick=function(){C.setStyle("display","none")};E.innerHTML=""+F;var A=C.getCoordinates([$("scroller")]);var D=$(G).getCoordinates([$("scroller")]);C.setStyle("left",D.right);C.setStyle("top",D.top-A.height);return }function showAttachment(A,F,E,D,B,C){showColorPicker(A,F,E,D,B,C)}patchExplorerStyles=function(B){if(window.ie){var A;[".greeni1",".greeni2",".greeni3",".whitei1",".whitei2",".whitei3",".gTabHead",".encoder"].each(function(C){A=$ES(C,B);console.log(C,A.length,A);A.setStyle("width","auto")})}};var setOpacity=function(A,B){$(A).setOpacity(B)};var getOpacity=function(A){if(window.ie){throw"unimplement_method_exception"}return A.getStyle("opacity")}
