Merge pull request #1303 from leigh-pointer/AddModulePermissions

Permissions for edit applied from the page permissions.
This commit is contained in:
Shaun Walker 2021-04-30 10:55:22 -04:00 committed by GitHub
commit d1abbde20c
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -369,10 +369,12 @@
module.PageId = PageState.Page.PageId;
module.ModuleDefinitionName = ModuleDefinitionName;
module.AllPages = false;
// set module view permissions to page edit permissions
List<PermissionString> permissions = UserSecurity.GetPermissionStrings(PageState.Page.Permissions);
permissions.Remove(permissions.Find(p => p.PermissionName == PermissionNames.View));
List<string> editpermissions = permissions.Find(p => p.PermissionName == PermissionNames.Edit).Permissions.Split(";").ToList();
permissions.Add(new PermissionString { PermissionName = PermissionNames.View, Permissions = string.Join(";", editpermissions.ToArray()) });
permissions.Find(p => p.PermissionName == PermissionNames.View).Permissions = permissions.Find(p => p.PermissionName == PermissionNames.Edit).Permissions;
module.Permissions = UserSecurity.SetPermissionStrings(permissions);
module = await ModuleService.AddModuleAsync(module);
ModuleId = module.ModuleId.ToString();
}