protected void Page_Load(object sender, EventArgs e) { if (!CustomerSession.CurrentCustomer.RegistredUser) { var cacheName = CacheNames.GetBottomMenuCacheObjectName(); if (CacheManager.Contains(cacheName)) { ltbottomMenu.Text = CacheManager.Get <string>(cacheName); } else { ltbottomMenu.Text = GetHtml(); CacheManager.Insert <string>(cacheName, ltbottomMenu.Text); } } else { var cacheName = CacheNames.GetBottomMenuAuthCacheObjectName(); if (CacheManager.Contains(cacheName)) { ltbottomMenu.Text = CacheManager.Get <string>(cacheName); } else { ltbottomMenu.Text = GetHtml(); CacheManager.Insert <string>(cacheName, ltbottomMenu.Text); } } }
private int CreateMenuItem() { ValidateData(); var mItem = new AdvMenuItem { MenuItemName = txtName.Text, MenuItemParentID = string.IsNullOrEmpty(hParent.Value) ? 0 : Convert.ToInt32(hParent.Value), MenuItemUrlPath = txtUrl.Text, Enabled = ckbEnabled.Checked, Blank = ckbBlank.Checked, SortOrder = Convert.ToInt32(txtSortOrder.Text), MenuItemUrlType = (EMenuItemUrlType)Convert.ToInt32(rblLinkType.SelectedValue), ShowMode = (EMenuItemShowMode)Convert.ToInt32(ddlShowMode.SelectedValue) }; if (_type == MenuService.EMenuType.Top) { CacheManager.RemoveByPattern(CacheNames.GetMainMenuCacheObjectName()); CacheManager.RemoveByPattern(CacheNames.GetMainMenuAuthCacheObjectName()); } else if (_type == MenuService.EMenuType.Bottom) { var cacheName = CacheNames.GetBottomMenuCacheObjectName(); if (CacheManager.Contains(cacheName)) { CacheManager.Remove(cacheName); } var cacheAuthName = CacheNames.GetBottomMenuAuthCacheObjectName(); if (CacheManager.Contains(cacheAuthName)) { CacheManager.Remove(cacheAuthName); } } mItem.MenuItemID = MenuService.AddMenuItem(mItem, _type); _menuItemId = mItem.MenuItemID; if (IconFileUpload.HasFile) { using (IconFileUpload.FileContent) { var tempName = PhotoService.AddPhoto(new Photo(0, _menuItemId, PhotoType.MenuIcon) { OriginName = IconFileUpload.FileName }); if (!string.IsNullOrWhiteSpace(tempName)) { IconFileUpload.SaveAs(FoldersHelper.GetPathAbsolut(FolderType.MenuIcons, tempName)); } } } else { mItem.MenuItemIcon = string.Empty; } MenuService.UpdateMenuItem(mItem, _type); return(mItem.MenuItemID); }
/// <summary> /// update category /// </summary> /// <param name="category"></param> /// <param name="updateCache">refresh cache</param> /// <returns></returns> public static bool UpdateCategory(Category category, bool updateCache) { SQLDataAccess.ExecuteNonQuery("[Catalog].[sp_UpdateCategory]", CommandType.StoredProcedure, new SqlParameter("@CategoryID", category.CategoryId), new SqlParameter("@Name", category.Name), new SqlParameter("@ParentCategory", category.ParentCategoryId), new SqlParameter("@Description", category.Description), new SqlParameter("@BriefDescription", category.BriefDescription), new SqlParameter("@Enabled", category.Enabled), new SqlParameter("@DisplayStyle", category.DisplayStyle), new SqlParameter("@displayChildProducts", category.DisplayChildProducts), new SqlParameter("@DisplayBrandsInMenu", category.DisplayBrandsInMenu), new SqlParameter("@DisplaySubCategoriesInMenu", category.DisplaySubCategoriesInMenu), new SqlParameter("@SortOrder", category.SortOrder), //new SqlParameter("@Picture", !string.IsNullOrEmpty(category.Picture) ? category.Picture : ((object)DBNull.Value)), //new SqlParameter("@MiniPicture", !string.IsNullOrEmpty(category.MiniPicture) ? category.MiniPicture : ((object)DBNull.Value)), new SqlParameter("@UrlPath", category.UrlPath), new SqlParameter("@Sorting", category.Sorting) ); if (category.Meta != null) { if (category.Meta.Title.IsNullOrEmpty() && category.Meta.MetaKeywords.IsNullOrEmpty() && category.Meta.MetaDescription.IsNullOrEmpty() && category.Meta.H1.IsNullOrEmpty()) { if (MetaInfoService.IsMetaExist(category.CategoryId, MetaType.Category)) { MetaInfoService.DeleteMetaInfo(category.CategoryId, MetaType.Category); } } else { MetaInfoService.SetMeta(category.Meta); } } SetCategoryHierarchicallyEnabled(category.CategoryId); // Work with cache if (updateCache) { CacheManager.Remove(CacheNames.GetCategoryCacheObjectName(category.CategoryId)); CacheManager.RemoveByPattern("MenuCatalog"); if (category.ParentCategoryId == 0) { var cacheName = CacheNames.GetBottomMenuCacheObjectName(); if (CacheManager.Contains(cacheName)) { CacheManager.Remove(cacheName); } } } return(true); }
/// <summary> /// delete category and photo of category /// </summary> /// <param name="categoryId"></param> public static void DeleteCategoryAndPhotos(int categoryId) { foreach (var id in DeleteCategory(categoryId, true)) { PhotoService.DeletePhotos(id, PhotoType.CategoryBig); PhotoService.DeletePhotos(id, PhotoType.CategorySmall); } var cacheName = CacheNames.GetBottomMenuCacheObjectName(); if (CacheManager.Contains(cacheName)) { CacheManager.Remove(cacheName); } }
public static bool UpdateCategorySortOrder(string name, int sortOrder, int cateoryId) { SQLDataAccess.ExecuteNonQuery( "Update Catalog.Category set name=@name, SortOrder=@SortOrder where CategoryID = @CategoryID", CommandType.Text, new SqlParameter("@name", name), new SqlParameter("@SortOrder", sortOrder), new SqlParameter("@CategoryID", cateoryId)); CacheManager.RemoveByPattern("MenuCatalog"); var cacheName = CacheNames.GetBottomMenuCacheObjectName(); if (CacheManager.Contains(cacheName)) { CacheManager.Remove(cacheName); } return(true); }
/// <summary> /// add category /// </summary> /// <param name="cat"></param> /// <param name="updateCache"></param> /// <param name="db"></param> /// <returns></returns> public static int AddCategory(Category cat, bool updateCache, SQLDataAccess db) { db.cmd.CommandText = "[Catalog].[sp_AddCategory]"; db.cmd.CommandType = CommandType.StoredProcedure; db.cmd.Parameters.Clear(); db.cmd.Parameters.AddWithValue("@Description", cat.Description ?? (object)DBNull.Value); db.cmd.Parameters.AddWithValue("@BriefDescription", cat.BriefDescription ?? (object)DBNull.Value); db.cmd.Parameters.AddWithValue("@Name", cat.Name); db.cmd.Parameters.AddWithValue("@ParentCategory", cat.ParentCategoryId); db.cmd.Parameters.AddWithValue("@SortOrder", cat.SortOrder); db.cmd.Parameters.AddWithValue("@Enabled", cat.Enabled); db.cmd.Parameters.AddWithValue("@DisplayStyle", cat.DisplayStyle ?? String.Empty); db.cmd.Parameters.AddWithValue("@DisplayChildProducts", cat.DisplayChildProducts); db.cmd.Parameters.AddWithValue("@DisplayBrandsInMenu", cat.DisplayBrandsInMenu); db.cmd.Parameters.AddWithValue("@DisplaySubCategoriesInMenu", cat.DisplaySubCategoriesInMenu); db.cmd.Parameters.AddWithValue("@UrlPath", cat.UrlPath); db.cmd.Parameters.AddWithValue("@Sorting", cat.Sorting); db.cnOpen(); var id = SQLDataHelper.GetInt(db.cmd.ExecuteScalar()); db.cnClose(); if (updateCache) { CacheManager.Remove(CacheNames.GetCategoryCacheObjectName(cat.ParentCategoryId)); CacheManager.RemoveByPattern("MenuCatalog"); if (cat.ParentCategoryId == 0) { var cacheName = CacheNames.GetBottomMenuCacheObjectName(); if (CacheManager.Contains(cacheName)) { CacheManager.Remove(cacheName); } } } return(id); }
//public string GetPicLink(int mItemId) //{ // string url = String.Empty; // UrlService.GetAdminLink() // return paramID != 0 && !String.IsNullOrEmpty(url = AdvantShop.Core.UrlRewriter.RouteService1.GetUrlAdminStringByParamID(paramID)) // ? String.Format("<a href=\"{0}\" class=\"editbtn showtooltip\" title=\"{1}\"><img src=\"admin/images/list.gif\" style=\"border: none;\"/></a>", url, Resource.Admin_MasterPageAdminMenu_EditPage) // : " "; //} protected void hlDeleteCategory_Click(object sender, EventArgs e) { foreach (var id in MenuService.GetAllChildIdByParent(_menuId, _menuType)) { MenuService.DeleteMenuItemById(id, _menuType); } if (_menuType == MenuService.EMenuType.Top) { CacheManager.RemoveByPattern(CacheNames.GetMainMenuCacheObjectName()); Response.Redirect("Menu.aspx?type=Top"); } else if (_menuType == MenuService.EMenuType.Bottom) { var cacheName = CacheNames.GetBottomMenuCacheObjectName(); if (CacheManager.Contains(cacheName)) { CacheManager.Remove(cacheName); } Response.Redirect("Menu.aspx?type=Bottom"); } }
protected void lbDeleteSelected_Click(object sender, EventArgs e) { if ((_selectionFilter != null) && (_selectionFilter.Values != null)) { if (!_inverseSelection) { foreach (var id in _selectionFilter.Values) { foreach (var item in MenuService.GetAllChildIdByParent(Convert.ToInt32(id), _menuType)) { MenuService.DeleteMenuItemById(item, _menuType); } } } else { var itemsIds = _paging.ItemsIds <int>("MenuItemID as ID"); foreach (var mItemId in itemsIds.Where(mId => !_selectionFilter.Values.Contains(mId.ToString()))) { foreach (var id in MenuService.GetAllChildIdByParent(mItemId, _menuType)) { MenuService.DeleteMenuItemById(id, _menuType); } } } if (_menuType == MenuService.EMenuType.Top) { CacheManager.RemoveByPattern(CacheNames.GetMainMenuCacheObjectName()); } if (_menuType == MenuService.EMenuType.Bottom) { var cacheName = CacheNames.GetBottomMenuCacheObjectName(); if (CacheManager.Contains(cacheName)) { CacheManager.Remove(cacheName); } } } }
protected void grid_RowCommand(object sender, GridViewCommandEventArgs e) { if (e.CommandName == "DeleteItem") { if (_menuType == MenuService.EMenuType.Top) { CacheManager.RemoveByPattern(CacheNames.GetMainMenuCacheObjectName()); } else if (_menuType == MenuService.EMenuType.Bottom) { var cacheName = CacheNames.GetBottomMenuCacheObjectName(); if (CacheManager.Contains(cacheName)) { CacheManager.Remove(cacheName); } } foreach (var id in MenuService.GetAllChildIdByParent(Convert.ToInt32(e.CommandArgument), _menuType)) { MenuService.DeleteMenuItemById(id, _menuType); } } }
/// <summary> /// delete category by categoryId /// </summary> /// <param name="categoryId"></param> /// <param name="updateCache">refresh cache</param> /// <returns>return list of file namme image</returns> private static IEnumerable <int> DeleteCategory(int categoryId, bool updateCache) { if (categoryId == 0) { throw new Exception("deleting Root catregory"); } if (updateCache) { CacheManager.Remove(CacheNames.GetCategoryCacheObjectName(categoryId)); CacheManager.RemoveByPattern("MenuCatalog"); var cacheName = CacheNames.GetBottomMenuCacheObjectName(); if (CacheManager.Contains(cacheName)) { CacheManager.Remove(cacheName); } } return(SQLDataAccess.ExecuteReadIEnumerable("[Catalog].[sp_DeleteCategoryWithSubCategoies]", CommandType.StoredProcedure, reader => SQLDataHelper.GetInt(reader, "CategoryID"), new SqlParameter("@id", categoryId))); }
protected void treeBottom_TreeNodeCommand(object sender, CommandEventArgs e) { try { if (e.CommandName.StartsWith("DeleteMenuItem")) { int menuId = 0; if (!String.IsNullOrEmpty(treeBottom.SelectedValue)) { menuId = Convert.ToInt32(treeBottom.SelectedValue); } if (e.CommandName.Contains("#")) { menuId = Convert.ToInt32(e.CommandName.Substring(e.CommandName.IndexOf("#") + 1)); } if (menuId != 0) { foreach (var id in MenuService.GetAllChildIdByParent(menuId, MenuService.EMenuType.Bottom)) { MenuService.DeleteMenuItemById(id, MenuService.EMenuType.Bottom); } var cacheName = CacheNames.GetBottomMenuCacheObjectName(); if (CacheManager.Contains(cacheName)) { CacheManager.Remove(cacheName); } } } } catch (Exception ex) { Debug.LogError(ex); } }
private void SaveMenuItem() { if (_mode == eMenuMode.Err) { return; } if (!ValidateData()) { return; } var url = string.Empty; if (txtUrl.Text.Contains("www.")) { url = txtUrl.Text.Contains("http://") || txtUrl.Text.Contains("https://") ? txtUrl.Text : "http://" + txtUrl.Text; } else { url = txtUrl.Text; } lblError.Text = String.Empty; var mItem = new AdvMenuItem { MenuItemID = _menuItemId, MenuItemName = txtName.Text, MenuItemParentID = string.IsNullOrEmpty(hParent.Value) ? 0 : Convert.ToInt32(hParent.Value), MenuItemUrlPath = url, SortOrder = Convert.ToInt32(txtSortOrder.Text), Blank = ckbBlank.Checked, Enabled = ckbEnabled.Checked, MenuItemUrlType = (EMenuItemUrlType)Convert.ToInt32(rblLinkType.SelectedValue), ShowMode = (EMenuItemShowMode)Convert.ToInt32(ddlShowMode.SelectedValue), NoFollow = ckbNofollow.Checked }; if (IconFileUpload.HasFile) { PhotoService.DeletePhotos(_menuItemId, PhotoType.MenuIcon); using (IconFileUpload.FileContent) { var tempName = PhotoService.AddPhoto(new Photo(0, _menuItemId, PhotoType.MenuIcon) { OriginName = IconFileUpload.FileName }); if (!string.IsNullOrWhiteSpace(tempName)) { IconFileUpload.SaveAs(FoldersHelper.GetPathAbsolut(FolderType.MenuIcons, tempName)); } mItem.MenuItemIcon = tempName; } } else { mItem.MenuItemIcon = pnlIcon.Visible ? imgIcon.ToolTip : null; } MenuService.UpdateMenuItem(mItem, _type); if (_type == MenuService.EMenuType.Top) { CacheManager.RemoveByPattern(CacheNames.GetMainMenuCacheObjectName()); CacheManager.RemoveByPattern(CacheNames.GetMainMenuAuthCacheObjectName()); } else if (_type == MenuService.EMenuType.Bottom) { var cacheName = CacheNames.GetBottomMenuCacheObjectName(); if (CacheManager.Contains(cacheName)) { CacheManager.Remove(cacheName); } var cacheAuthName = CacheNames.GetBottomMenuAuthCacheObjectName(); if (CacheManager.Contains(cacheAuthName)) { CacheManager.Remove(cacheAuthName); } } }
protected void Page_PreRender(object sender, EventArgs e) { if (!IsPostBack || _needReloadTree) { tree.Nodes.Clear(); treeBottom.Nodes.Clear(); tree.Nodes.Add(new ButtonTreeNodeMenu { NavigateUrl = "Menu.aspx?type=Top", Text = Resource.Admin_MenuManager_TopMenu, Value = "0", TreeView = tree, MenuType = MenuService.EMenuType.Top }); treeBottom.Nodes.Add(new ButtonTreeNodeMenu { NavigateUrl = "Menu.aspx?type=Bottom", Text = Resource.Admin_MenuManager_BottomMenu, Value = @"0", TreeView = treeBottom, MenuType = MenuService.EMenuType.Bottom }); LoadRootMenuItems(tree.Nodes[0].ChildNodes, MenuService.EMenuType.Top); LoadRootMenuItems(treeBottom.Nodes[0].ChildNodes, MenuService.EMenuType.Bottom); if (_menuId == 0) { if (_menuType == MenuService.EMenuType.Top && tree.Nodes.Count > 0) { tree.Nodes[0].Select(); } else if (_menuType == MenuService.EMenuType.Bottom && treeBottom.Nodes.Count > 0) { treeBottom.Nodes[0].Select(); } } else { TreeNodeCollection nodes; switch (_menuType) { case MenuService.EMenuType.Top: nodes = tree.Nodes[0].ChildNodes; break; case MenuService.EMenuType.Bottom: nodes = treeBottom.Nodes[0].ChildNodes; break; default: nodes = new TreeNodeCollection(); break; } bool isFirstNode = true; foreach (var parentMenuItem in MenuService.GetParentMenuItems(_menuId, _menuType)) { var tn = (from TreeNode n in nodes where n.Value == parentMenuItem.ToString() select n). SingleOrDefault(); if (tn != null) { tn.Selected = isFirstNode; isFirstNode = false; tn.Expand(); nodes = tn.ChildNodes; } } } } if (grid.UpdatedRow != null) { if (_menuType == MenuService.EMenuType.Top) { CacheManager.RemoveByPattern(CacheNames.GetMainMenuCacheObjectName()); } else if (_menuType == MenuService.EMenuType.Bottom) { var cacheName = CacheNames.GetBottomMenuCacheObjectName(); if (CacheManager.Contains(cacheName)) { CacheManager.Remove(cacheName); } } var mItem = MenuService.GetMenuItemById(Convert.ToInt32(grid.UpdatedRow["ID"]), _menuType); mItem.MenuItemName = grid.UpdatedRow["MenuItemName"]; mItem.Blank = Convert.ToBoolean(grid.UpdatedRow["Blank"]); mItem.SortOrder = Convert.ToInt32(grid.UpdatedRow["SortOrder"]); mItem.Enabled = Convert.ToBoolean(grid.UpdatedRow["Enabled"]); MenuService.UpdateMenuItem(mItem, _menuType); } DataTable data = _paging.PageItems; while (data.Rows.Count < 1 && _paging.CurrentPageIndex > 1) { _paging.CurrentPageIndex--; data = _paging.PageItems; } var clmn = new DataColumn("IsSelected", typeof(bool)) { DefaultValue = _inverseSelection }; data.Columns.Add(clmn); if ((_selectionFilter != null) && (_selectionFilter.Values != null)) { for (int i = 0; i <= data.Rows.Count - 1; i++) { int intIndex = i; if (Array.Exists(_selectionFilter.Values, c => c == (data.Rows[intIndex]["ID"]).ToString())) { data.Rows[i]["IsSelected"] = !_inverseSelection; } } } if (data.Rows.Count < 1) { goToPage.Visible = false; } grid.DataSource = data; grid.DataBind(); pageNumberer.PageCount = _paging.PageCount; lblFound.Text = _paging.TotalRowsCount.ToString(); }