From 946b9904857e89bc4faba91c1ced7f11cd0328d3 Mon Sep 17 00:00:00 2001 From: malik masis Date: Mon, 8 Aug 2022 17:16:02 +0300 Subject: [PATCH] Added permission for `SetAsHomePage` --- ...CmsKitAdminPermissionDefinitionProvider.cs | 2 ++ .../Permissions/CmsKitAdminPermissions.cs | 7 +++--- .../CmsKit/Admin/Pages/PageAdminAppService.cs | 1 + .../CmsKit/Admin/Pages/PageAdminController.cs | 1 + .../CmsKitAdminWebModule.cs | 25 ++++++++++--------- .../Pages/CmsKit/Pages/index.js | 2 +- 6 files changed, 21 insertions(+), 17 deletions(-) diff --git a/modules/cms-kit/src/Volo.CmsKit.Admin.Application.Contracts/Volo/CmsKit/Permissions/CmsKitAdminPermissionDefinitionProvider.cs b/modules/cms-kit/src/Volo.CmsKit.Admin.Application.Contracts/Volo/CmsKit/Permissions/CmsKitAdminPermissionDefinitionProvider.cs index b89b38d43a..7ba4cc2d84 100644 --- a/modules/cms-kit/src/Volo.CmsKit.Admin.Application.Contracts/Volo/CmsKit/Permissions/CmsKitAdminPermissionDefinitionProvider.cs +++ b/modules/cms-kit/src/Volo.CmsKit.Admin.Application.Contracts/Volo/CmsKit/Permissions/CmsKitAdminPermissionDefinitionProvider.cs @@ -35,6 +35,8 @@ public class CmsKitAdminPermissionDefinitionProvider : PermissionDefinitionProvi .RequireGlobalFeatures(typeof(PagesFeature)); pageManagement.AddChild(CmsKitAdminPermissions.Pages.Delete, L("Permission:PageManagement:Delete")) .RequireGlobalFeatures(typeof(PagesFeature)); + pageManagement.AddChild(CmsKitAdminPermissions.Pages.SetAsHomePage, L("Permission:PageManagement:SetAsHomePage")) + .RequireGlobalFeatures(typeof(PagesFeature)); var blogManagement = cmsGroup.AddPermission(CmsKitAdminPermissions.Blogs.Default, L("Permission:BlogManagement")) .RequireGlobalFeatures(typeof(BlogsFeature)); diff --git a/modules/cms-kit/src/Volo.CmsKit.Admin.Application.Contracts/Volo/CmsKit/Permissions/CmsKitAdminPermissions.cs b/modules/cms-kit/src/Volo.CmsKit.Admin.Application.Contracts/Volo/CmsKit/Permissions/CmsKitAdminPermissions.cs index b5d2a8eaa6..2852a0b4ee 100644 --- a/modules/cms-kit/src/Volo.CmsKit.Admin.Application.Contracts/Volo/CmsKit/Permissions/CmsKitAdminPermissions.cs +++ b/modules/cms-kit/src/Volo.CmsKit.Admin.Application.Contracts/Volo/CmsKit/Permissions/CmsKitAdminPermissions.cs @@ -1,8 +1,6 @@ -using Volo.Abp.Reflection; +namespace Volo.CmsKit.Permissions; -namespace Volo.CmsKit.Permissions; - -public class CmsKitAdminPermissions +public static class CmsKitAdminPermissions { public const string GroupName = "CmsKit"; @@ -34,6 +32,7 @@ public class CmsKitAdminPermissions public const string Create = Default + ".Create"; public const string Update = Default + ".Update"; public const string Delete = Default + ".Delete"; + public const string SetAsHomePage = Default + ".SetAsHomePage"; } public static class Blogs diff --git a/modules/cms-kit/src/Volo.CmsKit.Admin.Application/Volo/CmsKit/Admin/Pages/PageAdminAppService.cs b/modules/cms-kit/src/Volo.CmsKit.Admin.Application/Volo/CmsKit/Admin/Pages/PageAdminAppService.cs index 67c6464e0c..c6c7b614b3 100644 --- a/modules/cms-kit/src/Volo.CmsKit.Admin.Application/Volo/CmsKit/Admin/Pages/PageAdminAppService.cs +++ b/modules/cms-kit/src/Volo.CmsKit.Admin.Application/Volo/CmsKit/Admin/Pages/PageAdminAppService.cs @@ -84,6 +84,7 @@ public class PageAdminAppService : CmsKitAdminAppServiceBase, IPageAdminAppServi await PageRepository.DeleteAsync(id); } + [Authorize(CmsKitAdminPermissions.Pages.SetAsHomePage)] public virtual async Task SetAsHomePageAsync(Guid id) { await PageManager.SetHomePageAsFalseAsync(true); diff --git a/modules/cms-kit/src/Volo.CmsKit.Admin.HttpApi/Volo/CmsKit/Admin/Pages/PageAdminController.cs b/modules/cms-kit/src/Volo.CmsKit.Admin.HttpApi/Volo/CmsKit/Admin/Pages/PageAdminController.cs index 8311c8ff58..637c4e11a0 100644 --- a/modules/cms-kit/src/Volo.CmsKit.Admin.HttpApi/Volo/CmsKit/Admin/Pages/PageAdminController.cs +++ b/modules/cms-kit/src/Volo.CmsKit.Admin.HttpApi/Volo/CmsKit/Admin/Pages/PageAdminController.cs @@ -61,6 +61,7 @@ public class PageAdminController : CmsKitAdminController, IPageAdminAppService } [HttpGet] + [Authorize(CmsKitAdminPermissions.Pages.SetAsHomePage)] [Route("setashomepage/{id}")] public virtual Task SetAsHomePageAsync(Guid id) { diff --git a/modules/cms-kit/src/Volo.CmsKit.Admin.Web/CmsKitAdminWebModule.cs b/modules/cms-kit/src/Volo.CmsKit.Admin.Web/CmsKitAdminWebModule.cs index be4d85ddcc..4c886b9185 100644 --- a/modules/cms-kit/src/Volo.CmsKit.Admin.Web/CmsKitAdminWebModule.cs +++ b/modules/cms-kit/src/Volo.CmsKit.Admin.Web/CmsKitAdminWebModule.cs @@ -1,19 +1,19 @@ using Microsoft.AspNetCore.Mvc.RazorPages; using Microsoft.Extensions.DependencyInjection; using Volo.Abp.AspNetCore.Mvc; -using Volo.CmsKit.Admin.Web.Menus; using Volo.Abp.AspNetCore.Mvc.Localization; +using Volo.Abp.AspNetCore.Mvc.UI.Theme.Shared.PageToolbars; +using Volo.Abp.AutoMapper; +using Volo.Abp.Http.ProxyScripting.Generators.JQuery; +using Volo.Abp.Localization; using Volo.Abp.Modularity; using Volo.Abp.UI.Navigation; using Volo.Abp.VirtualFileSystem; +using Volo.CmsKit.Admin.MediaDescriptors; +using Volo.CmsKit.Admin.Web.Menus; using Volo.CmsKit.Localization; -using Volo.CmsKit.Web; using Volo.CmsKit.Permissions; -using Volo.Abp.AspNetCore.Mvc.UI.Theme.Shared.PageToolbars; -using Volo.Abp.Localization; -using Volo.Abp.AutoMapper; -using Volo.Abp.Http.ProxyScripting.Generators.JQuery; -using Volo.CmsKit.Admin.MediaDescriptors; +using Volo.CmsKit.Web; namespace Volo.CmsKit.Admin.Web; @@ -64,6 +64,7 @@ public class CmsKitAdminWebModule : AbpModule options.Conventions.AuthorizeFolder("/CmsKit/Pages", CmsKitAdminPermissions.Pages.Default); options.Conventions.AuthorizeFolder("/CmsKit/Pages/Create", CmsKitAdminPermissions.Pages.Create); options.Conventions.AuthorizeFolder("/CmsKit/Pages/Update", CmsKitAdminPermissions.Pages.Update); + options.Conventions.AuthorizeFolder("/CmsKit/Pages/SetAsHomePage", CmsKitAdminPermissions.Pages.SetAsHomePage); options.Conventions.AuthorizeFolder("/CmsKit/Blogs", CmsKitAdminPermissions.Blogs.Default); options.Conventions.AuthorizeFolder("/CmsKit/Blogs/Create", CmsKitAdminPermissions.Blogs.Create); options.Conventions.AuthorizeFolder("/CmsKit/Blogs/Update", CmsKitAdminPermissions.Blogs.Update); @@ -98,7 +99,7 @@ public class CmsKitAdminWebModule : AbpModule Configure(options => { - options.Configure( + options.Configure( toolbar => { toolbar.AddButton( @@ -110,7 +111,7 @@ public class CmsKitAdminWebModule : AbpModule } ); - options.Configure( + options.Configure( toolbar => { toolbar.AddButton( @@ -121,7 +122,7 @@ public class CmsKitAdminWebModule : AbpModule ); }); - options.Configure( + options.Configure( toolbar => { toolbar.AddButton( @@ -133,7 +134,7 @@ public class CmsKitAdminWebModule : AbpModule ); }); - options.Configure( + options.Configure( toolbar => { toolbar.AddButton( @@ -145,7 +146,7 @@ public class CmsKitAdminWebModule : AbpModule ); }); - options.Configure( + options.Configure( toolbar => { toolbar.AddButton( diff --git a/modules/cms-kit/src/Volo.CmsKit.Admin.Web/Pages/CmsKit/Pages/index.js b/modules/cms-kit/src/Volo.CmsKit.Admin.Web/Pages/CmsKit/Pages/index.js index f51532c63c..de09ac2077 100644 --- a/modules/cms-kit/src/Volo.CmsKit.Admin.Web/Pages/CmsKit/Pages/index.js +++ b/modules/cms-kit/src/Volo.CmsKit.Admin.Web/Pages/CmsKit/Pages/index.js @@ -49,7 +49,7 @@ $(function (){ }, { text: l('SetAsHomePage'), - visible: abp.auth.isGranted('CmsKit.Pages.Delete'), + visible: abp.auth.isGranted('CmsKit.Pages.SetAsHomePage'), action: function (data) { pagesService .setAsHomePage(data.record.id)