From 6392b0e79f0b3a492dbcf126a4a51ae5a13b696d Mon Sep 17 00:00:00 2001 From: tempcode Date: Fri, 1 Mar 2024 08:47:40 +0100 Subject: [PATCH 1/5] fix(AuditTrail): allow to see action option only if user have view audit trail permission --- .../Drivers/AuditTrailContentsDriver.cs | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) diff --git a/src/OrchardCore.Modules/OrchardCore.Contents/AuditTrail/Drivers/AuditTrailContentsDriver.cs b/src/OrchardCore.Modules/OrchardCore.Contents/AuditTrail/Drivers/AuditTrailContentsDriver.cs index 363357986b4..c76a7d2ec19 100644 --- a/src/OrchardCore.Modules/OrchardCore.Contents/AuditTrail/Drivers/AuditTrailContentsDriver.cs +++ b/src/OrchardCore.Modules/OrchardCore.Contents/AuditTrail/Drivers/AuditTrailContentsDriver.cs @@ -1,3 +1,5 @@ +using Microsoft.AspNetCore.Authorization; +using Microsoft.AspNetCore.Http; using OrchardCore.ContentManagement; using OrchardCore.ContentManagement.Display.ContentDisplay; using OrchardCore.ContentManagement.Display.ViewModels; @@ -8,10 +10,20 @@ namespace OrchardCore.Contents.AuditTrail.Drivers { public class AuditTrailContentsDriver : ContentDisplayDriver { - // TODO: What permission are we looking for here? + private readonly IHttpContextAccessor _httpContextAccessor; + private readonly IAuthorizationService _authorizationService; + + public AuditTrailContentsDriver( + IHttpContextAccessor httpContextAccessor, + IAuthorizationService authorizationService) + { + _httpContextAccessor = httpContextAccessor; + _authorizationService = authorizationService; + } public override IDisplayResult Display(ContentItem contentItem, IUpdateModel updater) { - return Initialize("AuditTrailContentsAction_SummaryAdmin", m => m.ContentItem = contentItem).Location("SummaryAdmin", "ActionsMenu:10"); + return Initialize("AuditTrailContentsAction_SummaryAdmin", m => m.ContentItem = contentItem).Location("SummaryAdmin", "ActionsMenu:10") + .RenderWhen(() => _authorizationService.AuthorizeAsync(_httpContextAccessor.HttpContext?.User, OrchardCore.AuditTrail.AuditTrailPermissions.ViewAuditTrail)); } } } From 294d2943a2f3e38c0a9f9cd0b957a0f8892bfbf6 Mon Sep 17 00:00:00 2001 From: tempcode Date: Fri, 1 Mar 2024 15:12:19 +0100 Subject: [PATCH 2/5] Update src/OrchardCore.Modules/OrchardCore.Contents/AuditTrail/Drivers/AuditTrailContentsDriver.cs Co-authored-by: Hisham Bin Ateya --- .../AuditTrail/Drivers/AuditTrailContentsDriver.cs | 1 + 1 file changed, 1 insertion(+) diff --git a/src/OrchardCore.Modules/OrchardCore.Contents/AuditTrail/Drivers/AuditTrailContentsDriver.cs b/src/OrchardCore.Modules/OrchardCore.Contents/AuditTrail/Drivers/AuditTrailContentsDriver.cs index c76a7d2ec19..55cafd230b5 100644 --- a/src/OrchardCore.Modules/OrchardCore.Contents/AuditTrail/Drivers/AuditTrailContentsDriver.cs +++ b/src/OrchardCore.Modules/OrchardCore.Contents/AuditTrail/Drivers/AuditTrailContentsDriver.cs @@ -20,6 +20,7 @@ public AuditTrailContentsDriver( _httpContextAccessor = httpContextAccessor; _authorizationService = authorizationService; } + public override IDisplayResult Display(ContentItem contentItem, IUpdateModel updater) { return Initialize("AuditTrailContentsAction_SummaryAdmin", m => m.ContentItem = contentItem).Location("SummaryAdmin", "ActionsMenu:10") From df6f1956cf0ec6b3fb93c1a737bd85a1b7641d36 Mon Sep 17 00:00:00 2001 From: tempcode Date: Fri, 1 Mar 2024 15:12:24 +0100 Subject: [PATCH 3/5] Update src/OrchardCore.Modules/OrchardCore.Contents/AuditTrail/Drivers/AuditTrailContentsDriver.cs Co-authored-by: Hisham Bin Ateya --- .../AuditTrail/Drivers/AuditTrailContentsDriver.cs | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/OrchardCore.Modules/OrchardCore.Contents/AuditTrail/Drivers/AuditTrailContentsDriver.cs b/src/OrchardCore.Modules/OrchardCore.Contents/AuditTrail/Drivers/AuditTrailContentsDriver.cs index 55cafd230b5..364d9d5819a 100644 --- a/src/OrchardCore.Modules/OrchardCore.Contents/AuditTrail/Drivers/AuditTrailContentsDriver.cs +++ b/src/OrchardCore.Modules/OrchardCore.Contents/AuditTrail/Drivers/AuditTrailContentsDriver.cs @@ -23,8 +23,9 @@ public AuditTrailContentsDriver( public override IDisplayResult Display(ContentItem contentItem, IUpdateModel updater) { - return Initialize("AuditTrailContentsAction_SummaryAdmin", m => m.ContentItem = contentItem).Location("SummaryAdmin", "ActionsMenu:10") - .RenderWhen(() => _authorizationService.AuthorizeAsync(_httpContextAccessor.HttpContext?.User, OrchardCore.AuditTrail.AuditTrailPermissions.ViewAuditTrail)); + return Initialize("AuditTrailContentsAction_SummaryAdmin", m => m.ContentItem = contentItem) + .Location("SummaryAdmin", "ActionsMenu:10") + .RenderWhen(() => _authorizationService.AuthorizeAsync(_httpContextAccessor.HttpContext?.User, OrchardCore.AuditTrail.AuditTrailPermissions.ViewAuditTrail)); } } } From 704a6ab10b395b4e957b753e223be036acdb9bfb Mon Sep 17 00:00:00 2001 From: tempcode Date: Fri, 1 Mar 2024 22:28:47 +0100 Subject: [PATCH 4/5] fix(AuditTrail): call item by using --- .../AuditTrail/Drivers/AuditTrailContentsDriver.cs | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/OrchardCore.Modules/OrchardCore.Contents/AuditTrail/Drivers/AuditTrailContentsDriver.cs b/src/OrchardCore.Modules/OrchardCore.Contents/AuditTrail/Drivers/AuditTrailContentsDriver.cs index 364d9d5819a..c2fbf6dd081 100644 --- a/src/OrchardCore.Modules/OrchardCore.Contents/AuditTrail/Drivers/AuditTrailContentsDriver.cs +++ b/src/OrchardCore.Modules/OrchardCore.Contents/AuditTrail/Drivers/AuditTrailContentsDriver.cs @@ -5,6 +5,7 @@ using OrchardCore.ContentManagement.Display.ViewModels; using OrchardCore.DisplayManagement.ModelBinding; using OrchardCore.DisplayManagement.Views; +using OrchardCore.AuditTrail; namespace OrchardCore.Contents.AuditTrail.Drivers { @@ -25,7 +26,7 @@ public override IDisplayResult Display(ContentItem contentItem, IUpdateModel upd { return Initialize("AuditTrailContentsAction_SummaryAdmin", m => m.ContentItem = contentItem) .Location("SummaryAdmin", "ActionsMenu:10") - .RenderWhen(() => _authorizationService.AuthorizeAsync(_httpContextAccessor.HttpContext?.User, OrchardCore.AuditTrail.AuditTrailPermissions.ViewAuditTrail)); + .RenderWhen(() => _authorizationService.AuthorizeAsync(_httpContextAccessor.HttpContext?.User, AuditTrailPermissions.ViewAuditTrail)); } } } From cd1f5039cec0744b4f168110857fcb27573f4c5f Mon Sep 17 00:00:00 2001 From: tempcode Date: Fri, 1 Mar 2024 22:32:22 +0100 Subject: [PATCH 5/5] fix(AuditTrail): sort using --- .../AuditTrail/Drivers/AuditTrailContentsDriver.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/OrchardCore.Modules/OrchardCore.Contents/AuditTrail/Drivers/AuditTrailContentsDriver.cs b/src/OrchardCore.Modules/OrchardCore.Contents/AuditTrail/Drivers/AuditTrailContentsDriver.cs index c2fbf6dd081..3288f89ac94 100644 --- a/src/OrchardCore.Modules/OrchardCore.Contents/AuditTrail/Drivers/AuditTrailContentsDriver.cs +++ b/src/OrchardCore.Modules/OrchardCore.Contents/AuditTrail/Drivers/AuditTrailContentsDriver.cs @@ -1,11 +1,11 @@ using Microsoft.AspNetCore.Authorization; using Microsoft.AspNetCore.Http; +using OrchardCore.AuditTrail; using OrchardCore.ContentManagement; using OrchardCore.ContentManagement.Display.ContentDisplay; using OrchardCore.ContentManagement.Display.ViewModels; using OrchardCore.DisplayManagement.ModelBinding; using OrchardCore.DisplayManagement.Views; -using OrchardCore.AuditTrail; namespace OrchardCore.Contents.AuditTrail.Drivers {