Adds GetDetailedPermissions to the content controller which is used in the permissions dialog

This commit is contained in:
Shannon
2017-06-29 01:00:52 +10:00
parent 3cd39fee94
commit 85d988e75e
10 changed files with 128 additions and 123 deletions

View File

@@ -27,18 +27,18 @@ namespace Umbraco.Web.Models.Mapping
.ConstructUsing((UserGroupSave save) => new UserGroup() { CreateDate = DateTime.Now })
.IgnoreAllUnmapped()
.ForMember(user => user.Alias, expression => expression.MapFrom(save => save.Alias))
.ForMember(user => user.Name, expression => expression.MapFrom(save => save.Name))
.ForMember(user => user.Icon, expression => expression.MapFrom(save => save.Icon))
.ForMember(user => user.StartMediaId, expression => expression.MapFrom(save => save.StartMediaId))
.ForMember(user => user.StartContentId, expression => expression.MapFrom(save => save.StartContentId))
.ForMember(user => user.Name, expression => expression.MapFrom(save => save.Name))
.ForMember(user => user.Icon, expression => expression.MapFrom(save => save.Icon))
.ForMember(user => user.StartMediaId, expression => expression.MapFrom(save => save.StartMediaId))
.ForMember(user => user.StartContentId, expression => expression.MapFrom(save => save.StartContentId))
.AfterMap((save, userGroup) =>
{
userGroup.ClearAllowedSections();
foreach (var section in save.Sections)
{
{
userGroup.AddAllowedSection(section);
}
});
});
//Used for merging existing UserSave to an existing IUser instance - this will not create an IUser instance!
config.CreateMap<UserSave, IUser>()
@@ -100,6 +100,22 @@ namespace Umbraco.Web.Models.Mapping
MapUserGroupBasic(applicationContext.Services, group, display);
});
//create a map to assign a user group's default permissions to the AssignedUserGroupPermissions instance
config.CreateMap<IUserGroup, AssignedUserGroupPermissions>()
.ForMember(detail => detail.Udi, opt => opt.Ignore())
.ForMember(detail => detail.Trashed, opt => opt.Ignore())
.ForMember(detail => detail.AdditionalData, opt => opt.Ignore())
.ForMember(detail => detail.Id, opt => opt.MapFrom(group => group.Id))
.ForMember(detail => detail.ParentId, opt => opt.UseValue(-1))
.ForMember(detail => detail.Path, opt => opt.MapFrom(userGroup => "-1," + userGroup.Id))
.ForMember(detail => detail.AssignedPermissions, expression => expression.ResolveUsing(new PermissionsResolver(applicationContext.Services.TextService)))
.AfterMap((group, display) =>
{
if (display.Icon.IsNullOrWhiteSpace())
{
display.Icon = "icon-users";
}
});
config.CreateMap<IUserGroup, UserGroupDisplay>()
.ForMember(detail => detail.StartContentId, opt => opt.Ignore())
.ForMember(detail => detail.StartMediaId, opt => opt.Ignore())
@@ -110,7 +126,7 @@ namespace Umbraco.Web.Models.Mapping
.ForMember(detail => detail.ParentId, opt => opt.UseValue(-1))
.ForMember(detail => detail.Path, opt => opt.MapFrom(userGroup => "-1," + userGroup.Id))
.ForMember(detail => detail.AdditionalData, opt => opt.Ignore())
.ForMember(detail => detail.Users, opt => opt.Ignore())
.ForMember(detail => detail.Users, opt => opt.Ignore())
.ForMember(detail => detail.DefaultPermissions, expression => expression.ResolveUsing(new PermissionsResolver(applicationContext.Services.TextService)))
.AfterMap((group, display) =>
{
@@ -138,6 +154,7 @@ namespace Umbraco.Web.Models.Mapping
.ForMember(detail => detail.Notifications, opt => opt.Ignore())
.ForMember(detail => detail.Udi, opt => opt.Ignore())
.ForMember(detail => detail.Icon, opt => opt.Ignore())
.ForMember(detail => detail.IsCurrentUser, opt => opt.Ignore())
.ForMember(detail => detail.Trashed, opt => opt.Ignore())
.ForMember(detail => detail.ResetPasswordValue, opt => opt.Ignore())
.ForMember(detail => detail.Alias, opt => opt.Ignore())