protected void cmdAdd_Click(object sender, EventArgs e)
        {
            try
            {
                // Only Update if the Entered Data is Valid
                if (this.Page.IsValid && !string.IsNullOrEmpty(this.txtCategoryName.Text))
                {
                    var objCategory  = new EventCategoryInfo();
                    var objSecurity  = new PortalSecurity();
                    var categoryName = "";

                    // Filter text for non-admins
                    if (PortalSecurity.IsInRole(this.PortalSettings.AdministratorRoleName))
                    {
                        categoryName = this.txtCategoryName.Text;
                    }
                    else
                    {
                        categoryName =
                            objSecurity.InputFilter(this.txtCategoryName.Text, PortalSecurity.FilterFlag.NoScripting);
                    }

                    //bind text values to object

                    objCategory.Category     = 0;
                    objCategory.PortalID     = this.PortalId;
                    objCategory.CategoryName = categoryName;
                    objCategory.Color        = this.txtCategoryColor.Text;
                    objCategory.FontColor    = this.txtCategoryFontColor.Text;
                    this._objCtlCategory.EventsCategorySave(objCategory);

                    this.SetDefaultValues();
                }
            }
            catch (Exception exc) //Module failed to load
            {
                Exceptions.ProcessModuleLoadException(this, exc);
            }

            this.BindData();
        }
        protected void GrdCategories_ItemCommand(object source, DataGridCommandEventArgs e)
        {
            switch (e.CommandName)
            {
            case "Select":
                int category = Convert.ToInt16(this.GrdCategories.DataKeys[e.Item.ItemIndex]);
                this._objCategory         = this._objCtlCategory.EventCategoryGet(category, this.PortalId);
                this.txtCategoryName.Text = this._objCategory.CategoryName;
                if (this._objCategory.Color != "")
                {
                    this.txtCategoryColor.Text     = this._objCategory.Color;
                    this.cpBackColor.SelectedColor = ColorTranslator.FromHtml(this.txtCategoryColor.Text);
                }
                else
                {
                    this.txtCategoryColor.Text     = "";
                    this.cpBackColor.SelectedColor = ColorTranslator.FromHtml(DefaultBackColor);
                }
                if (this._objCategory.FontColor != "")
                {
                    this.txtCategoryFontColor.Text = this._objCategory.FontColor;
                    this.cpForeColor.SelectedColor = ColorTranslator.FromHtml(this.txtCategoryFontColor.Text);
                }
                else
                {
                    this.txtCategoryFontColor.Text = "";
                    this.cpForeColor.SelectedColor = ColorTranslator.FromHtml(DefaultFontColor);
                }

                //Remember that we might use update
                this.ViewState.Add("Category", this._objCategory.Category.ToString());
                this.cmdUpdate.Visible = true;

                this.BindData();
                break;
            }
        }