(function(c){c.fn.colorPicker=function(){if(this.length>0){buildSelector()}return this.each(function(d){buildPicker(this)})};var a;var b=false;buildPicker=function(d){control=c("<input class='color_picker'>&nbsp;</input>");control.css("background-color",c(d).val());control.bind("click",toggleSelector);c(d).after(control)};buildSelector=function(){selector=c("<div id='color_selector'></div>");c.each(c.fn.colorPicker.defaultColors,function(d){swatch=c("<div class='color_swatch'>&nbsp;</div>");if(this=="transparent"){swatch.css("background-color",this)}else{swatch.css("background-color","#"+this)}swatch.bind("click",function(f){changeColor(c(this).css("background-color"))});swatch.bind("mouseover",function(f){c(this).css("border-color","#598FEF");c("input#color_value").val(toHex(c(this).css("background-color")))});swatch.bind("mouseout",function(f){c(this).css("border-color","#000");c("input#color_value").val(toHex(c(a).css("background-color")))});swatch.appendTo(selector)});hex_field=c("<label for='color_value'></label><input type='text' size='8' id='color_value'/>");hex_field.bind("keydown",function(d){if(d.keyCode==13){changeColor(c(this).val())}if(d.keyCode==27){toggleSelector()}});c("<div id='color_custom'></div>").append(hex_field).appendTo(selector);c("body").append(selector);selector.hide()};checkMouse=function(e){var d="div#color_selector";var f=c(e.target).parents(d).length;if(e.target==c(d)[0]||e.target==a||f>0){return}hideSelector()};hideSelector=function(){var d=c("div#color_selector");c(document).unbind("mousedown",checkMouse);d.hide();b=false};showSelector=function(){var d=c("div#color_selector");d.css({top:c(a).offset().top+(c(a).outerHeight()),left:c(a).offset().left});hexColor=c(a).next("input").val();c("input#color_value").val(hexColor);d.show();c(document).bind("mousedown",checkMouse);b=true};toggleSelector=function(d){a=this;b?hideSelector():showSelector()};changeColor=function(d){if(selectedValue=toHex(d)){c(a).css("background-color",selectedValue);c(a).prev("input").val(selectedValue).change();hideSelector()}};toHex=function(e){if(e.match(/[0-9a-fA-F]{3}$/)||e.match(/[0-9a-fA-F]{6}$/)){e=(e.charAt(0)=="#")?e:("#"+e)}else{if(e.match(/^rgb\(([0-9]|[1-9][0-9]|[1][0-9]{2}|[2][0-4][0-9]|[2][5][0-5]),[ ]{0,1}([0-9]|[1-9][0-9]|[1][0-9]{2}|[2][0-4][0-9]|[2][5][0-5]),[ ]{0,1}([0-9]|[1-9][0-9]|[1][0-9]{2}|[2][0-4][0-9]|[2][5][0-5])\)$/)){var j=([parseInt(RegExp.$1),parseInt(RegExp.$2),parseInt(RegExp.$3)]);var i=function(l){if(l.length<2){for(var k=0,g=2-l.length;k<g;k++){l="0"+l}}return l};if(j.length==3){var h=i(j[0].toString(16)),f=i(j[1].toString(16)),d=i(j[2].toString(16));e="#"+h+f+d}}else{if(e.match(/transparent/)){e="transparent"}else{e="transparent"}}}return e};c.fn.colorPicker.addColors=function(d){c.fn.colorPicker.defaultColors=c.fn.colorPicker.defaultColors.concat(d)};c.fn.colorPicker.defaultColors=["000000","993300","333300","000080","333399","333333","800000","FF6600","808000","008000","008080","0000FF","666699","808080","FF0000","FF9900","99CC00","339966","33CCCC","3366FF","800080","999999","FF00FF","FFCC00","FFFF00","00FF00","00FFFF","00CCFF","993366","C0C0C0","FF99CC","FFCC99","FFFF99","CCFFFF","99CCFF","FFFFFF","transparent"]})(jQuery);

