﻿Type.registerNamespace("AjaxControlToolkit");AjaxControlToolkit.ColorPickerBehavior=function(c){var b=null,a=this;AjaxControlToolkit.ColorPickerBehavior.initializeBase(a,[c]);a._textbox=AjaxControlToolkit.TextBoxWrapper.get_Wrapper(c);a._button=b;a._sample=b;a._cssClass="ajax__colorPicker";a._popupPosition=AjaxControlToolkit.PositioningMode.BottomLeft;a._selectedColor=b;a._enabled=true;a._selectedColorChanging=false;a._popupMouseDown=false;a._isOpen=false;a._blur=new AjaxControlToolkit.DeferredOperation(1,a,a._doBlur);a._popupBehavior=b;a._container=b;a._popupDiv=b;a._colorsTable=b;a._colorsBody=b;a._button$delegates={click:Function.createDelegate(a,a._button_onclick),keypress:Function.createDelegate(a,a._button_onkeypress),blur:Function.createDelegate(a,a._button_onblur)};a._element$delegates={change:Function.createDelegate(a,a._element_onchange),keypress:Function.createDelegate(a,a._element_onkeypress),click:Function.createDelegate(a,a._element_onclick),focus:Function.createDelegate(a,a._element_onfocus),blur:Function.createDelegate(a,a._element_onblur)};a._popup$delegates={mousedown:Function.createDelegate(a,a._popup_onmousedown),mouseup:Function.createDelegate(a,a._popup_onmouseup),drag:Function.createDelegate(a,a._popup_onevent),dragstart:Function.createDelegate(a,a._popup_onevent),select:Function.createDelegate(a,a._popup_onevent)};a._cell$delegates={mouseover:Function.createDelegate(a,a._cell_onmouseover),mouseout:Function.createDelegate(a,a._cell_onmouseout),click:Function.createDelegate(a,a._cell_onclick)}};AjaxControlToolkit.ColorPickerBehavior.prototype={initialize:function(){var a=this;AjaxControlToolkit.ColorPickerBehavior.callBaseMethod(a,"initialize");if(!AjaxControlToolkit.ColorPickerBehavior._colorRegex)AjaxControlToolkit.ColorPickerBehavior._colorRegex=new RegExp("^[A-Fa-f0-9]{6}$");var c=a.get_element();$addHandlers(c,a._element$delegates);if(a._button)$addHandlers(a._button,a._button$delegates);var b=a.get_selectedColor();if(b)a.set_selectedColor(b);a._restoreSample()},dispose:function(){var b=null,a=this;a._sample=b;if(a._button){$clearHandlers(a._button);a._button=b}if(a._popupBehavior){a._popupBehavior.dispose();a._popupBehavior=b}if(a._container){if(a._container.parentNode)a._container.parentNode.removeChild(a._container);a._container=b}if(a._popupDiv){$clearHandlers(a._popupDiv);a._popupDiv=b}if(a._colorsBody){for(var c=0;c<a._colorsBody.rows.length;c++){var f=a._colorsBody.rows[c];for(var d=0;d<f.cells.length;d++)$clearHandlers(f.cells[d].firstChild)}a._colorsBody=b}a._colorsTable=b;var e=a.get_element();if(e)$clearHandlers(e);AjaxControlToolkit.ColorPickerBehavior.callBaseMethod(a,"dispose")},get_button:function(){return this._button},set_button:function(b){var a=this;if(a._button!==b){if(a._button&&a.get_isInitialized())$common.removeHandlers(a._button,a._button$delegates);a._button=b;if(a._button&&a.get_isInitialized())$addHandlers(a._button,a._button$delegates);a.raisePropertyChanged("button")}},get_sample:function(){return this._sample},set_sample:function(a){if(this._sample!==a){this._sample=a;this.raisePropertyChanged("sample")}},get_selectedColor:function(){var a=this;if(a._selectedColor===null){var b=a._textbox.get_Value();if(a._validate(b))a._selectedColor=b}return a._selectedColor},set_selectedColor:function(b){var a=this;if(a._selectedColor!==b&&a._validate(b)){a._selectedColor=b;a._selectedColorChanging=true;if(b!==a._textbox.get_Value())a._textbox.set_Value(b);a._showSample(b);a._selectedColorChanging=false;a.raisePropertyChanged("selectedColor")}},get_enabled:function(){return this._enabled},set_enabled:function(a){if(this._enabled!==a){this._enabled=a;this.raisePropertyChanged("enabled")}},get_popupPosition:function(){return this._popupPosition},set_popupPosition:function(a){if(this._popupPosition!==a){this._popupPosition=a;this.raisePropertyChanged("popupPosition")}},add_colorSelectionChanged:function(a){this.get_events().addHandler("colorSelectionChanged",a)},remove_colorSelectionChanged:function(a){this.get_events().removeHandler("colorSelectionChanged",a)},raiseColorSelectionChanged:function(){var a=this.get_events().getHandler("colorSelectionChanged");if(a)a(this,Sys.EventArgs.Empty)},add_showing:function(a){this.get_events().addHandler("showing",a)},remove_showing:function(a){this.get_events().removeHandler("showing",a)},raiseShowing:function(b){var a=this.get_events().getHandler("showing");if(a)a(this,b)},add_shown:function(a){this.get_events().addHandler("shown",a)},remove_shown:function(a){this.get_events().removeHandler("shown",a)},raiseShown:function(){var a=this.get_events().getHandler("shown");if(a)a(this,Sys.EventArgs.Empty)},add_hiding:function(a){this.get_events().addHandler("hiding",a)},remove_hiding:function(a){this.get_events().removeHandler("hiding",a)},raiseHiding:function(b){var a=this.get_events().getHandler("hiding");if(a)a(this,b)},add_hidden:function(a){this.get_events().addHandler("hidden",a)},remove_hidden:function(a){this.get_events().removeHandler("hidden",a)},raiseHidden:function(){var a=this.get_events().getHandler("hidden");if(a)a(this,Sys.EventArgs.Empty)},show:function(){var a=this;a._ensureColorPicker();if(!a._isOpen){var b=new Sys.CancelEventArgs;a.raiseShowing(b);if(b.get_cancel())return;a._isOpen=true;a._popupBehavior.show();a.raiseShown()}},hide:function(){var a=this;if(a._isOpen){var b=new Sys.CancelEventArgs;a.raiseHiding(b);if(b.get_cancel())return;if(a._container)a._popupBehavior.hide();a._isOpen=false;a.raiseHidden();a._popupMouseDown=false}},_focus:function(){if(this._button)this._button.focus();else this.get_element().focus()},_doBlur:function(b){var a=this;if(!b&&Sys.Browser.agent===Sys.Browser.Opera)a._blur.post(true);else{if(!a._popupMouseDown)a.hide();a._popupMouseDown=false}},_buildColorPicker:function(){var a=this,c=a.get_element(),b=a.get_id();a._container=$common.createElementFromTemplate({nodeName:"div",properties:{id:b+"_container"},cssClasses:[a._cssClass]},c.parentNode);a._popupDiv=$common.createElementFromTemplate({nodeName:"div",events:a._popup$delegates,properties:{id:b+"_popupDiv"},cssClasses:["ajax__colorPicker_container"],visible:false},a._container)},_buildColors:function(){var a=this,f=a.get_id();a._colorsTable=$common.createElementFromTemplate({nodeName:"table",properties:{id:f+"_colorsTable",cellPadding:0,cellSpacing:1,border:0,style:{margin:"auto"}}},a._popupDiv);a._colorsBody=$common.createElementFromTemplate({nodeName:"tbody",properties:{id:f+"_colorsBody"}},a._colorsTable);var c=["00","99","33","66","FF","CC"],b,e,h=c.length;for(var i=0;i<h;i++){var j=$common.createElementFromTemplate({nodeName:"tr"},a._colorsBody);for(var d=0;d<h;d++){if(d===3)j=$common.createElementFromTemplate({nodeName:"tr"},a._colorsBody);for(var g=0;g<h;g++){b=c[i]+c[d]+c[g];e="#"+b;var k=$common.createElementFromTemplate({nodeName:"td"},j),l=$common.createElementFromTemplate({nodeName:"div",properties:{id:f+"_color_"+b,color:b,title:e,style:{backgroundColor:e},innerHTML:"&nbsp;"},events:a._cell$delegates},k)}}}},_ensureColorPicker:function(){var a=this;if(!a._container){var b=a.get_element();a._buildColorPicker();a._buildColors();a._popupBehavior=new $create(AjaxControlToolkit.PopupBehavior,{parentElement:b},{},{},a._popupDiv);a._popupBehavior.set_positioningMode(a._popupPosition)}},_showSample:function(b){if(this._sample){var a="";if(b)a="#"+b;this._sample.style.backgroundColor=a}},_restoreSample:function(){this._showSample(this._selectedColor)},_validate:function(a){return a&&AjaxControlToolkit.ColorPickerBehavior._colorRegex.test(a)},_element_onfocus:function(){var a=this;if(!a._enabled)return;if(!a._button){a.show();a._popupMouseDown=false}},_element_onblur:function(){if(!this._enabled)return;if(!this._button)this._doBlur()},_element_onchange:function(){var a=this;if(!a._selectedColorChanging){var b=a._textbox.get_Value();if(a._validate(b)||b===""){a._selectedColor=b;a._restoreSample()}}},_element_onkeypress:function(a){if(!this._enabled)return;if(!this._button&&a.charCode===Sys.UI.Key.esc){a.stopPropagation();a.preventDefault();this.hide()}},_element_onclick:function(){var a=this;if(!a._enabled)return;if(!a._button){a.show();a._popupMouseDown=false}},_popup_onevent:function(a){a.stopPropagation();a.preventDefault()},_popup_onmousedown:function(){this._popupMouseDown=true},_popup_onmouseup:function(){var a=this;if(Sys.Browser.agent===Sys.Browser.Opera&&a._blur.get_isPending())a._blur.cancel();a._popupMouseDown=false;a._focus()},_cell_onmouseover:function(a){a.stopPropagation();var b=a.target;this._showSample(b.color)},_cell_onmouseout:function(a){a.stopPropagation();this._restoreSample()},_cell_onclick:function(b){var a=this;b.stopPropagation();b.preventDefault();if(!a._enabled)return;var c=b.target;a.set_selectedColor(c.color);a._blur.post(true);a.raiseColorSelectionChanged()},_button_onclick:function(b){var a=this;b.preventDefault();b.stopPropagation();if(!a._enabled)return;if(!a._isOpen)a.show();else a.hide();a._focus();a._popupMouseDown=false},_button_onblur:function(){var a=this;if(!a._enabled)return;if(!a._popupMouseDown)a.hide();a._popupMouseDown=false},_button_onkeypress:function(a){if(!this._enabled)return;if(a.charCode===Sys.UI.Key.esc){a.stopPropagation();a.preventDefault();this.hide()}this._popupMouseDown=false}};AjaxControlToolkit.ColorPickerBehavior.registerClass("AjaxControlToolkit.ColorPickerBehavior",AjaxControlToolkit.BehaviorBase);
if(typeof(Sys)!=='undefined')Sys.Application.notifyScriptLoaded();