﻿Type.registerNamespace("AjaxControlToolkit");AjaxControlToolkit.PopupControlBehavior=function(a){AjaxControlToolkit.PopupControlBehavior.initializeBase(this,[a]);this._popupControlID=null;this._commitProperty=null;this._commitScript=null;this._position=null;this._offsetX=0;this._offsetY=0;this._extenderControlID=null;this._popupElement=null;this._popupBehavior=null;this._popupVisible=false;this._focusHandler=null;this._popupKeyDownHandler=null;this._popupClickHandler=null;this._bodyClickHandler=null;this._onShowJson=null;this._onHideJson=null};AjaxControlToolkit.PopupControlBehavior.prototype={initialize:function(){AjaxControlToolkit.PopupControlBehavior.callBaseMethod(this,"initialize");var a=this.get_element();this._popupElement=$get(this._popupControlID);this._popupBehavior=$create(AjaxControlToolkit.PopupBehavior,{id:this.get_id()+"PopupBehavior",parentElement:a},null,null,this._popupElement);this._onShowJson&&this._popupBehavior.set_onShow(this._onShowJson);this._onHideJson&&this._popupBehavior.set_onHide(this._onHideJson);this._focusHandler=Function.createDelegate(this,this._onFocus);this._popupClickHandler=Function.createDelegate(this,this._onPopupClick);this._bodyClickHandler=Function.createDelegate(this,this._onBodyClick);this._popupKeyDownHandler=Function.createDelegate(this,this._onPopupKeyDown);$addHandler(a,"focus",this._focusHandler);$addHandler(a,"click",this._focusHandler);$addHandler(document.body,"click",this._bodyClickHandler);$addHandler(this._popupElement,"click",this._popupClickHandler);$addHandler(this._popupElement,"keydown",this._popupKeyDownHandler);this.registerPartialUpdateEvents();AjaxControlToolkit.PopupControlBehavior.__VisiblePopup&&this.get_id()==AjaxControlToolkit.PopupControlBehavior.__VisiblePopup.get_id()&&this._onFocus(null)},dispose:function(){var a=this.get_element();this._onShowJson=null;this._onHideJson=null;if(this._popupBehavior){this._popupBehavior.dispose();this._popupBehavior=null}if(this._focusHandler){$removeHandler(a,"focus",this._focusHandler);$removeHandler(a,"click",this._focusHandler);this._focusHandler=null}if(this._bodyClickHandler){$removeHandler(document.body,"click",this._bodyClickHandler);this._bodyClickHandler=null}if(this._popupClickHandler){$removeHandler(this._popupElement,"click",this._popupClickHandler);this._popupClickHandler=null}if(this._popupKeyDownHandler){$removeHandler(this._popupElement,"keydown",this._popupKeyDownHandler);this._popupKeyDownHandler=null}AjaxControlToolkit.PopupControlBehavior.callBaseMethod(this,"dispose")},showPopup:function(){var a=AjaxControlToolkit.PopupControlBehavior.__VisiblePopup;a&&a._popupBehavior&&a.hidePopup();AjaxControlToolkit.PopupControlBehavior.callBaseMethod(this,"populate");this._popupBehavior.set_x(this._getLeftOffset());this._popupBehavior.set_y(this._getTopOffset());this._popupBehavior.show();this._popupVisible=true;AjaxControlToolkit.PopupControlBehavior.__VisiblePopup=this},hidePopup:function(){this._popupBehavior.hide();this._popupVisible=false;AjaxControlToolkit.PopupControlBehavior.__VisiblePopup=null},_onFocus:function(a){!this._popupVisible&&this.showPopup();a&&a.stopPropagation()},_onPopupKeyDown:function(a){this._popupVisible&&a.keyCode==27&&this.get_element().focus()},_onPopupClick:function(a){a.stopPropagation()},_onBodyClick:function(){this._popupVisible&&this.hidePopup()},_close:function(result){var e=this.get_element();if(null!=result){if("$$CANCEL$$"!=result){if(this._commitProperty)e[this._commitProperty]=result;else if("text"==e.type)e.value=result;else Sys.Debug.assert(false,String.format(AjaxControlToolkit.Resources.PopupControl_NoDefaultProperty,e.id,e.type));if(this._commitScript)eval(this._commitScript)}this.hidePopup()}},_partialUpdateEndRequest:function(c,b){AjaxControlToolkit.PopupControlBehavior.callBaseMethod(this,"_partialUpdateEndRequest",[c,b]);if(this.get_element()){var a=b.get_dataItems()[this.get_element().id];if(undefined===a&&AjaxControlToolkit.PopupControlBehavior.__VisiblePopup&&this.get_id()==AjaxControlToolkit.PopupControlBehavior.__VisiblePopup.get_id())a=b.get_dataItems()["_PopupControl_Proxy_ID_"];undefined!==a&&this._close(a)}},_onPopulated:function(b,a){AjaxControlToolkit.PopupControlBehavior.callBaseMethod(this,"_onPopulated",[b,a]);this._popupVisible&&this._popupBehavior.show()},_getLeftOffset:function(){if(AjaxControlToolkit.PopupControlPopupPosition.Left==this._position)return -1*this.get_element().offsetWidth+this._offsetX;else if(AjaxControlToolkit.PopupControlPopupPosition.Right==this._position)return this.get_element().offsetWidth+this._offsetX;else return this._offsetX},_getTopOffset:function(){var a;if(AjaxControlToolkit.PopupControlPopupPosition.Top==this._position)a=-1*this.get_element().offsetHeight+this._offsetY;else if(AjaxControlToolkit.PopupControlPopupPosition.Bottom==this._position)a=this.get_element().offsetHeight+this._offsetY;else a=this._offsetY;return a},get_onShow:function(){return this._popupBehavior?this._popupBehavior.get_onShow():this._onShowJson},set_onShow:function(a){if(this._popupBehavior)this._popupBehavior.set_onShow(a);else this._onShowJson=a;this.raisePropertyChanged("onShow")},get_onShowBehavior:function(){return this._popupBehavior?this._popupBehavior.get_onShowBehavior():null},onShow:function(){this._popupBehavior&&this._popupBehavior.onShow()},get_onHide:function(){return this._popupBehavior?this._popupBehavior.get_onHide():this._onHideJson},set_onHide:function(a){if(this._popupBehavior)this._popupBehavior.set_onHide(a);else this._onHideJson=a;this.raisePropertyChanged("onHide")},get_onHideBehavior:function(){return this._popupBehavior?this._popupBehavior.get_onHideBehavior():null},onHide:function(){this._popupBehavior&&this._popupBehavior.onHide()},get_PopupControlID:function(){return this._popupControlID},set_PopupControlID:function(a){if(this._popupControlID!=a){this._popupControlID=a;this.raisePropertyChanged("PopupControlID")}},get_CommitProperty:function(){return this._commitProperty},set_CommitProperty:function(a){if(this._commitProperty!=a){this._commitProperty=a;this.raisePropertyChanged("CommitProperty")}},get_CommitScript:function(){return this._commitScript},set_CommitScript:function(a){if(this._commitScript!=a){this._commitScript=a;this.raisePropertyChanged("CommitScript")}},get_Position:function(){return this._position},set_Position:function(a){if(this._position!=a){this._position=a;this.raisePropertyChanged("Position")}},get_ExtenderControlID:function(){return this._extenderControlID},set_ExtenderControlID:function(a){if(this._extenderControlID!=a){this._extenderControlID=a;this.raisePropertyChanged("ExtenderControlID")}},get_OffsetX:function(){return this._offsetX},set_OffsetX:function(a){if(this._offsetX!=a){this._offsetX=a;this.raisePropertyChanged("OffsetX")}},get_OffsetY:function(){return this._offsetY},set_OffsetY:function(a){if(this._offsetY!=a){this._offsetY=a;this.raisePropertyChanged("OffsetY")}},get_PopupVisible:function(){return this._popupVisible},add_showing:function(a){this._popupBehavior&&this._popupBehavior.add_showing(a)},remove_showing:function(a){this._popupBehavior&&this._popupBehavior.remove_showing(a)},raiseShowing:function(a){this._popupBehavior&&this._popupBehavior.raiseShowing(a)},add_shown:function(a){this._popupBehavior&&this._popupBehavior.add_shown(a)},remove_shown:function(a){this._popupBehavior&&this._popupBehavior.remove_shown(a)},raiseShown:function(a){this._popupBehavior&&this._popupBehavior.raiseShown(a)},add_hiding:function(a){this._popupBehavior&&this._popupBehavior.add_hiding(a)},remove_hiding:function(a){this._popupBehavior&&this._popupBehavior.remove_hiding(a)},raiseHiding:function(a){this._popupBehavior&&this._popupBehavior.raiseHiding(a)},add_hidden:function(a){this._popupBehavior&&this._popupBehavior.add_hidden(a)},remove_hidden:function(a){this._popupBehavior&&this._popupBehavior.remove_hidden(a)},raiseHidden:function(a){this._popupBehavior&&this._popupBehavior.raiseHidden(a)}};AjaxControlToolkit.PopupControlBehavior.registerClass("AjaxControlToolkit.PopupControlBehavior",AjaxControlToolkit.DynamicPopulateBehaviorBase);AjaxControlToolkit.PopupControlBehavior.__VisiblePopup=null;AjaxControlToolkit.PopupControlPopupPosition=function(){throw Error.invalidOperation()};AjaxControlToolkit.PopupControlPopupPosition.prototype={Center:0,Top:1,Left:2,Bottom:3,Right:4};AjaxControlToolkit.PopupControlPopupPosition.registerEnum("AjaxControlToolkit.PopupControlPopupPosition",false);
if(typeof(Sys)!=='undefined')Sys.Application.notifyScriptLoaded();