Type.registerNamespace("VividGroup.Framework.UI.WebControls");VividGroup.Framework.UI.WebControls.DropDownCheckBoxList=function(element){this._DefaultText="";this._SingleItemTextFormat="";this._MultipleItemsTextFormat="";this._AnimationSpeed=0.5;this._HideDelay=300;this._HideTimer=null;this._IsAnimating=false;this._IsShowing=false;this._onMouseOver=null;this._onMouseOut=null;this._onMouseClick=null;this._onItemSelected=null;VividGroup.Framework.UI.WebControls.DropDownCheckBoxList.initializeBase(this,[element])};VividGroup.Framework.UI.WebControls.DropDownCheckBoxList.prototype={initialize:function(){VividGroup.Framework.UI.WebControls.DropDownCheckBoxList.callBaseMethod(this,'initialize');this._onMouseOver=Function.createDelegate(this,this.mouseOver);this._onMouseOut=Function.createDelegate(this,this.hide);this._onMouseClick=Function.createDelegate(this,this.show);this._onItemSelected=Function.createDelegate(this,this.itemSelected);this._IsAnimating=false;this._Wrapper=$get(this.get_element().id);this._Header=$get(this.get_element().id+"_"+"header",this._Wrapper);this._Data=$get(this.get_element().id+"_"+"data",this._Wrapper);this._Boxes=this._Data.getElementsByTagName("INPUT");if(this._Boxes){for(var i=0;i<this._Boxes.length;i++){if(this._Boxes[i].type=="checkbox"){$addHandler(this._Boxes[i],"click",this._onItemSelected)}}}$addHandler(this._Header,"click",this._onMouseClick);$addHandler(this._Wrapper,"mouseout",this._onMouseOut);$addHandler(this._Wrapper,"mouseover",this._onMouseOver);this.itemSelected()},hide:function(sender,e){var self=this;self._HideTimer=setTimeout(function(){var anim=new AjaxControlToolkit.Animation.FadeOutAnimation(self._Data,self._AnimationSpeed,30,0,1,true);self._IsAnimating=true;anim.onEnd=function(){self._Data.style.display="none";self._IsAnimating=false;self._IsShowing=false};anim.play()},this._HideDelay)},show:function(sender,e){VividGroup.Framework.UI.WebControls.IFrameHack(this._Data,false);if(this._IsAnimating||this._IsShowing){return}this._IsShowing=true;this._Data.style.display="block";var anim=new AjaxControlToolkit.Animation.FadeInAnimation(this._Data,this._AnimationSpeed,30,0,1,true);anim.play()},mouseOver:function(sender,e){clearTimeout(this._HideTimer)},itemSelected:function(){var count=0;for(var i=0;i<this._Boxes.length;i++){if(this._Boxes[i].type=="checkbox"&&this._Boxes[i].checked){count++}}if(count==0){this._Header.innerHTML=this._DefaultText}else if(count==1){this._Header.innerHTML=String.format(this._SingleItemTextFormat,count)}else{this._Header.innerHTML=String.format(this._MultipleItemsTextFormat,count)}},dispose:function(){$removeHandler(this._Header,"click",this._onMouseClick);$removeHandler(this._Wrapper,"mouseout",this._onMouseOut);$removeHandler(this._Wrapper,"mouseover",this._onMouseOver);for(var i=0;i<this._Boxes.length;i++){if(this._Boxes[i].type=="checkbox"){$removeHandler(this._Boxes[i],"click",this._onItemSelected)}}VividGroup.Framework.UI.WebControls.DropDownCheckBoxList.callBaseMethod(this,'dispose')},get_DefaultText:function(){return this._DefaultText},set_DefaultText:function(value){this._DefaultText=value},get_SingleItemTextFormat:function(){return this._SingleItemTextFormat},set_SingleItemTextFormat:function(value){this._SingleItemTextFormat=value},get_MultipleItemsTextFormat:function(){return this._MultipleItemsTextFormat},set_MultipleItemsTextFormat:function(value){this._MultipleItemsTextFormat=value},get_HideDelay:function(){return this._HideDelay},set_HideDelay:function(value){this._HideDelay=value},get_AnimationSpeed:function(){return this._AnimationSpeed},set_AnimationSpeed:function(value){this._AnimationSpeed=value}};VividGroup.Framework.UI.WebControls.DropDownCheckBoxList.registerClass('VividGroup.Framework.UI.WebControls.DropDownCheckBoxList',Sys.UI.Control);if(typeof(Sys)!=='undefined'){Sys.Application.notifyScriptLoaded()}
if(typeof(Sys)!=='undefined')Sys.Application.notifyScriptLoaded();