From 9a7a53405124c2ac000cc8b33e0f194ffc16e58d Mon Sep 17 00:00:00 2001 From: sbwalker Date: Tue, 28 May 2024 07:55:45 -0400 Subject: [PATCH] introduce Clone method in Permission model --- Oqtane.Server/Repository/SiteRepository.cs | 12 +----------- Oqtane.Shared/Models/Permission.cs | 14 ++++++++++++++ 2 files changed, 15 insertions(+), 11 deletions(-) diff --git a/Oqtane.Server/Repository/SiteRepository.cs b/Oqtane.Server/Repository/SiteRepository.cs index 39dd43f2..3328461b 100644 --- a/Oqtane.Server/Repository/SiteRepository.cs +++ b/Oqtane.Server/Repository/SiteRepository.cs @@ -491,18 +491,8 @@ namespace Oqtane.Repository pageModule.Module.PermissionList = new List(); foreach (var permission in pageTemplateModule.PermissionList) { - pageModule.Module.PermissionList.Add(new Permission - { - SiteId = permission.SiteId, - EntityName = permission.EntityName, - EntityId = permission.EntityId, - PermissionName = permission.PermissionName, - RoleName = permission.RoleName, - UserId = permission.UserId, - IsAuthorized = permission.IsAuthorized - }); + pageModule.Module.PermissionList.Add(permission.Clone(permission)); } - //pageModule.Module.PermissionList = pageTemplateModule.PermissionList; pageModule.Module.AllPages = false; pageModule.Module.IsDeleted = false; try diff --git a/Oqtane.Shared/Models/Permission.cs b/Oqtane.Shared/Models/Permission.cs index 8d411252..1448e039 100644 --- a/Oqtane.Shared/Models/Permission.cs +++ b/Oqtane.Shared/Models/Permission.cs @@ -101,6 +101,20 @@ namespace Oqtane.Models IsAuthorized = isAuthorized; } + public Permission Clone(Permission permission) + { + return new Permission + { + SiteId = permission.SiteId, + EntityName = permission.EntityName, + EntityId = permission.EntityId, + PermissionName = permission.PermissionName, + RoleName = permission.RoleName, + UserId = permission.UserId, + IsAuthorized = permission.IsAuthorized + }; + } + [Obsolete("The Role property is deprecated", false)] [NotMapped] [JsonIgnore] // exclude from API payload