public async Task <bool> RemoveMenuCategoryAsync(long ownerId, long restaurantId, long menuCategoryId) { CheckTheLoggedInPerson(); EmployersRestaurants connection = await CheckEmployerRestaurantAsync(ownerId, restaurantId); MenuCategories menuCategory = await CheckMenuCategoryExistance(menuCategoryId); return(await RemoveMenuCategoryByIdAsync(menuCategory.Id)); }
private async Task <MenuCategories> CheckMenuCategoryExistance(long menuCategoryId) { MenuCategories menuCategory = await MenuCategoriesRepo.FindById(menuCategoryId); if (menuCategory == null) { throw new Exception("Non existing entry"); } return(menuCategory); }
private async Task <bool> RemoveMenuCategoryByIdAsync(long menuCategoryId) { MenuCategories menuCategory = await MenuCategoriesRepo.FindById(menuCategoryId); bool value = await RemoveCategoryByLanguageIdOrMenuCategoryIdAsync(menuCategory.Id, isMenuCategoryId : true); value &= await RemoveMenuItemByMenuCategoryIdAsync(menuCategory.Id); await MenuCategoriesRepo.RemoveAsync(menuCategory); return(value); }
public async Task <MenuCategories> UpdateMenuCategoryAsync(long ownerId, long restaurantId, long menuCategoryId, Dictionary <long, string> categoryName, Dictionary <long, string> categoryDescription) { CheckTheLoggedInPerson(); EmployersRestaurants connection = await CheckEmployerRestaurantAsync(ownerId, restaurantId); Menus currentMenu = await CheckMenuExistanceAsync(restaurantId); List <MenuLanguages> menuLanguages = await MenuLanguagesRepo.GetItemsByMenuId(currentMenu.Id); MenuCategories menuCategory = await CheckMenuCategoryExistance(menuCategoryId); List <Categories> categories = await CategoriesRepo.GetByMenuCategoryId(menuCategory.Id); foreach (var menuLang in menuLanguages) { bool checkName = categoryName.TryGetValue(menuLang.Id, out string name); categoryDescription.TryGetValue(menuLang.Id, out string description); if (!checkName) { name = "<< no name >>"; } Categories cat = categories.Where(x => x.MenuLanguageId == menuLang.Id).SingleOrDefault(); if (cat == null) { cat = new Categories { CategoryName = name, CategoryDescription = description, MenuCategoryId = menuCategory.Id, MenuLanguageId = menuLang.Id }; categories.Add(cat); await CategoriesRepo.AddAsync(cat, this.ModifierId); } else { cat.CategoryName = name; cat.CategoryDescription = description; await CategoriesRepo.UpdateAsync(cat, this.ModifierId); } } return(menuCategory); }
public void SplitCategoriesInColumns(int minColumnCount = 3) { if (MenuCategories == null || !MenuCategories.Any()) { return; } var totalItems = MenuCategories.Count(); if (totalItems >= minColumnCount) { FirstColumn.AddRange(MenuCategories); return; } var fisrtColSize = totalItems / 2 + 1; FirstColumn.AddRange(MenuCategories.Take(fisrtColSize)); SecondColumn.AddRange(MenuCategories.Skip(fisrtColSize)); }
public async Task <MenuCategories> AddMenuCategoryAsync(long ownerId, long restaurantId, Dictionary <long, string> categoryName, Dictionary <long, string> categoryDescription) { CheckTheLoggedInPerson(); EmployersRestaurants connection = await CheckEmployerRestaurantAsync(ownerId, restaurantId); Menus currentMenu = await CheckMenuExistanceAsync(restaurantId); List <MenuLanguages> menuLanguages = await MenuLanguagesRepo.GetItemsByMenuId(currentMenu.Id); MenuCategories menuCat = new MenuCategories(); await MenuCategoriesRepo.AddAsync(menuCat, this.ModifierId); foreach (var menuLang in menuLanguages) { bool checkName = categoryName.TryGetValue(menuLang.Id, out string name); categoryDescription.TryGetValue(menuLang.Id, out string description); if (!checkName) { name = "<< no name >>"; } Categories cat = new Categories { CategoryName = name, CategoryDescription = description, MenuLanguageId = menuLang.Id, MenuCategoryId = menuCat.Id }; await CategoriesRepo.AddAsync(cat, this.ModifierId); } return(menuCat); }
public string GetMenuCategoriesListJson(bool IsCategoryVisible,string PageName) { System.Web.Script.Serialization.JavaScriptSerializer jSearializer = new System.Web.Script.Serialization.JavaScriptSerializer(); List<MenuCategories> RetMenuCat = null; string RetVal = string.Empty; DIConnection ObjDIConnection = null; CMSHelper Helper = new CMSHelper(); List<System.Data.Common.DbParameter> DbParams = null; DataTable DtRetData = null; try { //Get Connection Object ObjDIConnection = Helper.GetConnectionObject(); // Checke if Connection object is null then return null and stop further flow to execute if (ObjDIConnection == null) { return RetVal; } // If Connection object is not null then excute further code else { DbParams = new List<System.Data.Common.DbParameter>(); // create database parameters System.Data.Common.DbParameter Param1 = ObjDIConnection.CreateDBParameter();// create RecordStartPosition parameter Param1.ParameterName = "@IsVisible"; Param1.DbType = DbType.Int32; Param1.Value = IsCategoryVisible; DbParams.Add(Param1); System.Data.Common.DbParameter Param2 = ObjDIConnection.CreateDBParameter();// create RecordStartPosition parameter Param2.ParameterName = "@PageName"; Param2.DbType = DbType.String; Param2.Value = PageName; DbParams.Add(Param2); // Execute stored procedure to get Tags From Database DtRetData = ObjDIConnection.ExecuteDataTable("sp_GetMenuCategoriesByPageName", CommandType.StoredProcedure, DbParams); // Check if return datatable is not null and having atleast 1 record if (DtRetData != null && DtRetData.Rows.Count > 0) { RetMenuCat = new List<MenuCategories>(); // Itterate through loop for (int Icount = 0; Icount < DtRetData.Rows.Count; Icount++) { MenuCategories ObjMenuCat = new MenuCategories(); ObjMenuCat.MenuCategory = DtRetData.Rows[Icount]["MenuCategory"].ToString(); ObjMenuCat.LinkText = DtRetData.Rows[Icount]["LinkText"].ToString(); ObjMenuCat.HeaderText = DtRetData.Rows[Icount]["HeaderText"].ToString(); ObjMenuCat.HeaderDesc = DtRetData.Rows[Icount]["HeaderDesc"].ToString(); ObjMenuCat.PageName = DtRetData.Rows[Icount]["PageName"].ToString(); // assign tag value to list RetVal RetMenuCat.Add(ObjMenuCat); } } RetVal = jSearializer.Serialize(RetMenuCat); } } catch (Exception Ex) { RetVal = string.Empty; Global.CreateExceptionString(Ex, null); } finally { ObjDIConnection = null; } return RetVal; }
public async Task <MenuItems> AddMenuItemAsync(long ownerId, long restaurantId, long menuCategoryId, Dictionary <long, string> itemName, Dictionary <long, string> itemDescription, Dictionary <long, string> itemWarnings, Dictionary <long, float> itemPrice) { CheckTheLoggedInPerson(); EmployersRestaurants connection = await CheckEmployerRestaurantAsync(ownerId, restaurantId); Menus currentMenu = await CheckMenuExistanceAsync(restaurantId); MenuCategories category = await CheckMenuCategoryExistance(menuCategoryId); MenuItems menuItem = new MenuItems { MenuId = currentMenu.Id, MenuCategoryId = category.Id, }; await MenuItemRepo.AddAsync(menuItem, this.ModifierId); List <MenuLanguages> menuLanguages = await MenuLanguagesRepo.GetItemsByMenuId(currentMenu.Id); foreach (var menuLang in menuLanguages) { bool checkName = itemName.TryGetValue(menuLang.Id, out string name); bool checkDescription = itemDescription.TryGetValue(menuLang.Id, out string description); itemWarnings.TryGetValue(menuLang.Id, out string warning); if (!checkName) { name = "<< no name >>"; } if (!checkDescription) { description = "<< no description >>"; } MenuItemContents contents = new MenuItemContents { ItemName = name, ItemDescription = description, ItemWarnings = warning, MenuItemId = menuItem.Id, MenuLanguageId = menuLang.Id }; await MenuItemContentRepo.AddAsync(contents, this.ModifierId); } List <MenuCurrencies> menuCurrencies = await MenuCurrencyRepo.GetItemsByMenuId(currentMenu.Id); foreach (var currency in menuCurrencies) { bool checkValue = itemPrice.TryGetValue(currency.Id, out float price); if (!checkValue) { price = 0F; } MenuItemValues value = new MenuItemValues { Price = price, MenuCurrencyId = currency.Id, MenuItemId = menuItem.Id }; await MenuItemValueRepo.AddAsync(value, this.ModifierId); } return(menuItem); }
/// <summary> /// get articles from database, /// bind it to html /// </summary> /// <param name="CallingPageUrl">paramater for maintaining article type</param> private void ShowArticles(string CallingPageUrl, bool IsHiddenArticlesVisible) { ArticlesGenerator GenerateArticle = new ArticlesGenerator(); List<MenuCategories> ListMenuCat = null; MenuCategories ObjMenuCat = null; string RetContentHtml = string.Empty; int MaxArticleCount = 0; int CurrentPageNo = 1; string RetMenuCategory = string.Empty; bool IsGetArticleByUrl = false; // string AdaptaionPagingName = Constants.CMS.AdaptaionPagingName.ToLower(); int ArticleStartPosition = 0; try { ListMenuCat = new List<MenuCategories>(); ObjMenuCat = new MenuCategories(); ListMenuCat = ObjMenuCat.GetMenuCategoriesList(true); foreach (MenuCategories Category in ListMenuCat) { if (CallingPageUrl.ToLower() == Category.MenuCategory.ToLower()) { IsGetArticleByUrl = true; MenuCategory = Category.MenuCategory.ToLower(); if (!string.IsNullOrEmpty(Global.MaxArticlesCount)) { MaxArticleCount = Convert.ToInt32(Global.MaxArticlesCount); } ArticleStartPosition = (CurrentPageNo - 1) * MaxArticleCount + 1; // Get Html For News RetContentHtml = GenerateArticle.GetArticleByMenuCategory(ArticleStartPosition, MaxArticleCount, MenuCategory, CurrentPageNo, IsHiddenArticlesVisible); break; } } if (!IsGetArticleByUrl) { this.ShowArticleByUrl(CallingPageUrl, true); } // Check if Return Html is not empty else if (!string.IsNullOrEmpty(RetContentHtml)) { //set Html to content page divContent.InnerHtml = RetContentHtml; } SelectedPageName = GenerateArticle.GetPageNameFromDbByMenuCategory(MenuCategory); } catch (Exception ex) { Global.CreateExceptionString(ex, null); } }
public string MoveUpNDownMenuCat(string requestParam) { string CategoryName = string.Empty; bool MoveUp = false; bool MoveDown = false; string RetVal = string.Empty; MenuCategories ObjMenuCat = null; string PageName = string.Empty; string[] Params; try { Params = Global.SplitString(requestParam, Constants.Delimiters.ParamDelimiter); CategoryName = Params[0]; MoveUp = Convert.ToBoolean(Params[1]); MoveDown = Convert.ToBoolean(Params[2]); PageName = Params[3]; ObjMenuCat = new MenuCategories(); RetVal = ObjMenuCat.MoveUpNDownMenuCat(CategoryName, MoveUp, MoveDown, PageName).ToString(); } catch (Exception Ex) { RetVal = string.Empty; Global.CreateExceptionString(Ex, null); } return RetVal; }
public string GetArticlesMenucategoriesListJson(string requestParam) { string RetVal = string.Empty; MenuCategories ObjMenuCat = null; bool isShowHiddenMenuCat = true; string PageName= string.Empty; string[] Params; try { Params = Global.SplitString(requestParam, Constants.Delimiters.ParamDelimiter); PageName = Params[0]; ObjMenuCat = new MenuCategories(); RetVal = ObjMenuCat.GetMenuCategoriesListJson(isShowHiddenMenuCat, PageName); } catch (Exception Ex) { RetVal = string.Empty; Global.CreateExceptionString(Ex, null); } return RetVal; }
public string EditMenuCategory(string requestParam) { string CategoryName = string.Empty; string LinkText = string.Empty; string HeaderText = string.Empty; string HeaderDesc = string.Empty; string RetVal = string.Empty; string SelcetedPageName = string.Empty; MenuCategories ObjMenuCat = null; string[] Params; try { Params = Global.SplitString(requestParam, Constants.Delimiters.ParamDelimiter); CategoryName = Params[0]; LinkText = Params[1]; HeaderText = Params[2]; HeaderDesc = Params[3]; SelcetedPageName = Params[4]; ObjMenuCat = new MenuCategories(); RetVal = ObjMenuCat.EditMenuCategory(CategoryName, LinkText, HeaderText, HeaderDesc, SelcetedPageName).ToString(); } catch (Exception Ex) { RetVal = string.Empty; Global.CreateExceptionString(Ex, null); } return RetVal; }
public string DeleteMenuCategory(string requestParam) { string RetVal = string.Empty; MenuCategories ObjMenuCat = null; string CategoryName = string.Empty; string[] Params; try { Params = Global.SplitString(requestParam, Constants.Delimiters.ParamDelimiter); CategoryName = Params[0]; ObjMenuCat = new MenuCategories(); RetVal = ObjMenuCat.DeleteMenuCategory(CategoryName).ToString(); } catch (Exception Ex) { RetVal = string.Empty; Global.CreateExceptionString(Ex, null); } return RetVal; }