private async Task CreateEditSectionItemContent(Content pageContent, MenuSectionItem menuSectionItem) { var menuSectionItemContent = MenuSectionItemContent.CreateMenuSectionItemContent(DynamicCreated, pageContent.Lang, menuSectionItem); menuSectionItemContent.PageId = pageContent.PageId; await _menuManager.AddMenuItemContentAsync(menuSectionItemContent); }
public void ValidateMenuItemContent(MenuSectionItemContent sectionItemContent) { if (sectionItemContent.MenuSectionItem == null) { throw new UserFriendlyException("InvalidaMenuItemSection"); } if (sectionItemContent.Id != 0) { return; } var found = _menuSectionItemContentRepository.FirstOrDefault(a => a.Lang == sectionItemContent.Lang && a.MenuSectionItem.Id == sectionItemContent.MenuSectionItem.Id); if (found == null) { return; } throw new UserFriendlyException("LangExists"); }
public async Task <int> AddMenuItemContentAsync(MenuSectionItemContent sectionItemContent) { //_menuPolicy.ValidateMenuItemContent(sectionItemContent); var found = _menuSectionItemContentRepository.FirstOrDefault( a => a.Lang == sectionItemContent.Lang && a.SectionItemId == sectionItemContent.MenuSectionItem.Id && a.PageId == sectionItemContent.PageId); if (found != null) { found.Lang = sectionItemContent.Lang; found.DisplayText = sectionItemContent.DisplayText; found.PageId = sectionItemContent.PageId; found.MenuSectionItem = sectionItemContent.MenuSectionItem; await _menuSectionItemContentRepository.InsertOrUpdateAndGetIdAsync(found); return(found.Id); } var id = await _menuSectionItemContentRepository.InsertOrUpdateAndGetIdAsync(sectionItemContent); return(id); }
public async Task SetItemForPage(Page page) { var section = await _menuSectionRepository.FirstOrDefaultAsync(a => a.CategoryId == page.CategoryId); if (section == null) { return; } var pageContents = _pageContentRepository.GetAllList(a => a.PageId == page.Id); var sectionItemEntity = MenuSectionItem.CreateMenuSectionItem(page.Name, section, page.Id); var id = await AddMenuItemAsync(sectionItemEntity); if (sectionItemEntity.Id == 0) { sectionItemEntity = _menuSectionItemRepository.FirstOrDefault(id); } foreach (var pageContent in pageContents) { await AddMenuItemContentAsync( MenuSectionItemContent.CreateMenuSectionItemContent(pageContent.Title, pageContent.Lang, sectionItemEntity)); } }