public IActionResult UpdateModule(PageModuleAdminModel model) { var command = _mapper.Map <UpdatePageModuleDetails>(model); command.SiteId = SiteId; command.PageModulePermissions = model.PageModulePermissions.ToDomain(); _commandSender.Send <UpdatePageModuleDetails, Page>(command); return(new NoContentResult()); }
public async Task <IActionResult> UpdateModule(PageModuleAdminModel model) { var command = _mapper.Map <UpdatePageModuleDetails>(model); command.SiteId = SiteId; command.PageModulePermissions = GetSelectedPageModulePermissions(model.PageModulePermissions); await Task.Run(() => _commandSender.Send <UpdatePageModuleDetails, Page>(command)); return(new NoContentResult()); }
public PageModuleAdminModel GetModuleAdminModel(Guid siteId, Guid pageId, Guid pageModuleId) { using (var context = _dbContextFactory.Create()) { var page = GetPage(context, siteId, pageId); if (page == null) { return(null); } var pageModule = page.PageModules.FirstOrDefault(x => x.Id == pageModuleId); if (pageModule == null) { return(null); } var result = new PageModuleAdminModel { PageId = page.Id, ModuleId = pageModule.ModuleId, PageModuleId = pageModule.Id, Title = pageModule.Title, InheritPermissions = pageModule.InheritPermissions }; var languages = context.Languages .Where(x => x.SiteId == siteId && x.Status != LanguageStatus.Deleted) .OrderBy(x => x.SortOrder) .ToList(); foreach (var language in languages) { var title = string.Empty; var existingLocalisation = pageModule .PageModuleLocalisations .FirstOrDefault(x => x.LanguageId == language.Id); if (existingLocalisation != null) { title = existingLocalisation.Title; } result.PageModuleLocalisations.Add(new PageModuleLocalisationAdminModel { PageModuleId = pageModule.Id, LanguageId = language.Id, LanguageName = language.Name, LanguageStatus = language.Status, Title = title }); } foreach (var role in _roleService.GetAllRoles()) { var pageModulePermission = new PageModulePermissionModel { RoleId = role.Id, RoleName = role.Name, Disabled = role.Name == DefaultRoleNames.Administrator }; foreach (PermissionType permisisonType in Enum.GetValues(typeof(PermissionType))) { bool selected = pageModule.PageModulePermissions .FirstOrDefault(x => x.RoleId == role.Id && x.Type == permisisonType) != null; pageModulePermission.PageModulePermissionTypes.Add(new PageModulePermissionTypeModel { Type = permisisonType, Selected = selected }); } result.PageModulePermissions.Add(pageModulePermission); } return(result); } }
public async Task <PageModuleAdminModel> GetModuleAdminModelAsync(Guid siteId, Guid pageId, Guid pageModuleId) { var page = _pageRepository.GetById(siteId, pageId); if (page == null || page.Status == PageStatus.Deleted) { return(null); } var pageModule = page.PageModules.FirstOrDefault(x => x.Id == pageModuleId); if (pageModule == null || pageModule.Status == PageModuleStatus.Deleted) { return(null); } var result = new PageModuleAdminModel { PageId = page.Id, ModuleId = pageModule.ModuleId, PageModuleId = pageModule.Id, Title = pageModule.Title, InheritPermissions = pageModule.InheritPermissions }; var languages = _languageRepository.GetAll(siteId).Where(x => x.Status != LanguageStatus.Deleted); foreach (var language in languages) { var title = string.Empty; var existingLocalisation = pageModule .PageModuleLocalisations .FirstOrDefault(x => x.LanguageId == language.Id); if (existingLocalisation != null) { title = existingLocalisation.Title; } result.PageModuleLocalisations.Add(new PageModuleLocalisationAdminModel { PageModuleId = pageModule.Id, LanguageId = language.Id, LanguageName = language.Name, Title = title }); } foreach (var role in _roleService.GetAllRoles()) { bool selected = pageModule.PageModulePermissions.FirstOrDefault(x => x.RoleId == role.Id) != null; result.PageModulePermissions.Add(new PageModulePermissionModel { RoleId = role.Id, RoleName = role.Name, Type = PermissionType.View, Selected = selected }); } return(result); }
public PageModuleAdminModel GetModuleAdminModel(Guid siteId, Guid pageId, Guid pageModuleId) { var page = _pageRepository.GetById(siteId, pageId); if (page == null) { return(null); } var pageModule = page.PageModules.FirstOrDefault(x => x.Id == pageModuleId); if (pageModule == null) { return(null); } var result = new PageModuleAdminModel { PageId = page.Id, ModuleId = pageModule.ModuleId, PageModuleId = pageModule.Id, Title = pageModule.Title, InheritPermissions = pageModule.InheritPermissions }; var languages = _languageRepository.GetAll(siteId); foreach (var language in languages) { var title = string.Empty; var existingLocalisation = pageModule .PageModuleLocalisations .FirstOrDefault(x => x.LanguageId == language.Id); if (existingLocalisation != null) { title = existingLocalisation.Title; } result.PageModuleLocalisations.Add(new PageModuleLocalisationAdminModel { PageModuleId = pageModule.Id, LanguageId = language.Id, LanguageName = language.Name, LanguageStatus = language.Status, Title = title }); } foreach (var role in _roleService.GetAllRoles()) { var pageModulePermission = new PageModulePermissionModel { RoleId = role.Id, RoleName = role.Name }; foreach (PermissionType permisisonType in Enum.GetValues(typeof(PermissionType))) { bool selected = pageModule.PageModulePermissions .FirstOrDefault(x => x.RoleId == role.Id && x.Type == permisisonType) != null; pageModulePermission.PageModulePermissionTypes.Add(new PageModulePermissionTypeModel { Type = permisisonType, Selected = selected }); } result.PageModulePermissions.Add(pageModulePermission); } return(result); }