public override async Task <IViewProviderResult> BuildEditAsync(Role role, IViewProviderContext updater) { // Locate the role we are editing within our default roles var defaultRole = DefaultRoles.ToList() .FirstOrDefault(r => r.Equals(role.Name, StringComparison.OrdinalIgnoreCase)); // Build model var editRoleViewModel = new EditRoleViewModel() { Id = role.Id, RoleName = role.Name, Role = role, IsNewRole = await IsNewRole(role.Id), IsDefaultRole = defaultRole != null ? true : false, EnabledPermissions = await GetEnabledRolePermissionsAsync(role), CategorizedPermissions = await _permissionsManager.GetCategorizedPermissionsAsync() }; // Return view return(Views( View <EditRoleViewModel>("Admin.Edit.Header", model => editRoleViewModel).Zone("header"), View <EditRoleViewModel>("Admin.Edit.Meta", model => editRoleViewModel).Zone("meta"), View <EditRoleViewModel>("Admin.Edit.Content", model => editRoleViewModel).Zone("content"), View <EditRoleViewModel>("Admin.Edit.Footer", model => editRoleViewModel).Zone("footer"), View <EditRoleViewModel>("Admin.Edit.Actions", model => editRoleViewModel).Zone("actions") )); }
public override async Task <IViewProviderResult> BuildEditAsync(Moderator moderator, IViewProviderContext updater) { // Serialize tagIt model var users = ""; if (moderator.UserId > 0) { users = new List <UserApiResult>() { new UserApiResult() { Id = moderator.User.Id, DisplayName = moderator.User.DisplayName, UserName = moderator.User.UserName, Avatar = moderator.User.Avatar } }.Serialize(); } var viewModel = new EditModeratorViewModel { Users = users, Moderator = moderator, IsNewModerator = moderator.UserId == 0, EnabledPermissions = await GetEnabledModeratorPermissionsAsync(moderator), CategorizedPermissions = await _permissionsManager.GetCategorizedPermissionsAsync() }; return(Views( View <EditModeratorViewModel>("Admin.Edit.Header", model => viewModel).Zone("header").Order(1), View <EditModeratorViewModel>("Admin.Edit.Content", model => viewModel).Zone("content").Order(1), View <EditModeratorViewModel>("Admin.Edit.Actions", model => viewModel).Zone("actions").Order(1), View <EditModeratorViewModel>("Admin.Edit.Footer", model => viewModel).Zone("footer").Order(1) )); }