private void SaveCategoryInfo()
        {
            bool isNew = false;
            BPArticleCategories bp = new BPArticleCategories();
            BEArticles ds = new BEArticles();
            BEArticles.tbl_ArticleCategoriesRow category = null;

            if (ArticleCategoryID > 0)
            {
                ds = bp.SelectByID(ArticleCategoryID);
                category = ds.tbl_ArticleCategories.FindByArticleCategoryID(ArticleCategoryID);

                if (category.ArticleCategoryActive && (!chkArticleCategoryActive.Checked))
                    UpdateCategoryItems();
            }

            if (category == null)
            {
                category = ds.tbl_ArticleCategories.Newtbl_ArticleCategoriesRow();
                isNew = true;
            }

            category.ArticleCategoryName = txtArticleCategoryName.Text.Trim();

            if (txtArticleCategoryDescription.Text.Trim() != "")
                category.ArticleCategoryDescription = txtArticleCategoryDescription.Text.Trim();
            else
                category.SetArticleCategoryDescriptionNull();

            category.ArticleTypeID = SubTypeID;
            category.ArticleCategoryActive = chkArticleCategoryActive.Checked;
            category.DateModified = DateTime.Now;
            category.ModifiedByAdminID = PageUserID;

            if (isNew)
            {
                category.ArticleCategoryOrder = bp.GetArticleCategoryMaxOrder(SubTypeID);
                category.DateCreated = DateTime.Now;
                ds.tbl_ArticleCategories.Addtbl_ArticleCategoriesRow(category);
            }

            bp.Update(ds);
        }
        protected void btnDelete_Click(object sender, EventArgs e)
        {
            BPArticleCategories bp = new BPArticleCategories();
            BEArticles ds = bp.SelectByID(ArticleCategoryID);
            BEArticles.tbl_ArticleCategoriesRow category = ds.tbl_ArticleCategories.FindByArticleCategoryID(ArticleCategoryID);

            if (category != null)
            {
                UpdateCategoryItems();

                category.Delete();
                bp.Update(ds);
            }

            BrowseRedirect();
        }
        protected void btnMove_Click(object sender, EventArgs e)
        {
            bool found1 = false, found2 = false;
            int Position = Convert.ToInt32(ddlPosition.SelectedValue);
            int ItemToMove = Convert.ToInt32(ddlItemToMove.SelectedValue);

            BPArticleCategories bp = new BPArticleCategories();
            BEArticles ds = bp.SelectByArticleTypeID(SubTypeID);
            BEArticles.tbl_ArticleCategoriesRow[] categoryRows =
                (BEArticles.tbl_ArticleCategoriesRow[])ds.tbl_ArticleCategories.Select("", ds.tbl_ArticleCategories.ArticleCategoryOrderColumn.ColumnName);

            BEArticles.tbl_ArticleCategoriesRow moveCategory = ds.tbl_ArticleCategories.FindByArticleCategoryID(ItemToMove);

            foreach (BEArticles.tbl_ArticleCategoriesRow category in categoryRows)
            {
                if (found1 && found2)
                    break;

                if (category.ArticleCategoryID == moveCategory.ArticleCategoryID)
                {
                    found1 = true;

                    if (category.ArticleCategoryID == Position)
                        found2 = true;

                }
                else if (category.ArticleCategoryID == Position)
                {
                    found2 = true;

                    if (rblBeforeAfter.SelectedValue == "0")
                    {
                        moveCategory.ArticleCategoryOrder = category.ArticleCategoryOrder;
                        category.ArticleCategoryOrder++;
                    }
                    else
                    {
                        if (found1)
                            category.ArticleCategoryOrder--;

                        moveCategory.ArticleCategoryOrder = category.ArticleCategoryOrder + 1;
                    }
                }
                else if (found1 && !found2)
                    category.ArticleCategoryOrder--;

                else if (found2 && !found1)
                    category.ArticleCategoryOrder++;

            }

            bp.Update(ds);

            dgArticleCategories.DataSource = GetData();
            dgArticleCategories.DataBind();
        }