Browse Source

Added permission for `SetAsHomePage`

pull/13635/head
malik masis 4 years ago
parent
commit
946b990485
  1. 2
      modules/cms-kit/src/Volo.CmsKit.Admin.Application.Contracts/Volo/CmsKit/Permissions/CmsKitAdminPermissionDefinitionProvider.cs
  2. 7
      modules/cms-kit/src/Volo.CmsKit.Admin.Application.Contracts/Volo/CmsKit/Permissions/CmsKitAdminPermissions.cs
  3. 1
      modules/cms-kit/src/Volo.CmsKit.Admin.Application/Volo/CmsKit/Admin/Pages/PageAdminAppService.cs
  4. 1
      modules/cms-kit/src/Volo.CmsKit.Admin.HttpApi/Volo/CmsKit/Admin/Pages/PageAdminController.cs
  5. 25
      modules/cms-kit/src/Volo.CmsKit.Admin.Web/CmsKitAdminWebModule.cs
  6. 2
      modules/cms-kit/src/Volo.CmsKit.Admin.Web/Pages/CmsKit/Pages/index.js

2
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)); .RequireGlobalFeatures(typeof(PagesFeature));
pageManagement.AddChild(CmsKitAdminPermissions.Pages.Delete, L("Permission:PageManagement:Delete")) pageManagement.AddChild(CmsKitAdminPermissions.Pages.Delete, L("Permission:PageManagement:Delete"))
.RequireGlobalFeatures(typeof(PagesFeature)); .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")) var blogManagement = cmsGroup.AddPermission(CmsKitAdminPermissions.Blogs.Default, L("Permission:BlogManagement"))
.RequireGlobalFeatures(typeof(BlogsFeature)); .RequireGlobalFeatures(typeof(BlogsFeature));

7
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 static class CmsKitAdminPermissions
public class CmsKitAdminPermissions
{ {
public const string GroupName = "CmsKit"; public const string GroupName = "CmsKit";
@ -34,6 +32,7 @@ public class CmsKitAdminPermissions
public const string Create = Default + ".Create"; public const string Create = Default + ".Create";
public const string Update = Default + ".Update"; public const string Update = Default + ".Update";
public const string Delete = Default + ".Delete"; public const string Delete = Default + ".Delete";
public const string SetAsHomePage = Default + ".SetAsHomePage";
} }
public static class Blogs public static class Blogs

1
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); await PageRepository.DeleteAsync(id);
} }
[Authorize(CmsKitAdminPermissions.Pages.SetAsHomePage)]
public virtual async Task SetAsHomePageAsync(Guid id) public virtual async Task SetAsHomePageAsync(Guid id)
{ {
await PageManager.SetHomePageAsFalseAsync(true); await PageManager.SetHomePageAsFalseAsync(true);

1
modules/cms-kit/src/Volo.CmsKit.Admin.HttpApi/Volo/CmsKit/Admin/Pages/PageAdminController.cs

@ -61,6 +61,7 @@ public class PageAdminController : CmsKitAdminController, IPageAdminAppService
} }
[HttpGet] [HttpGet]
[Authorize(CmsKitAdminPermissions.Pages.SetAsHomePage)]
[Route("setashomepage/{id}")] [Route("setashomepage/{id}")]
public virtual Task SetAsHomePageAsync(Guid id) public virtual Task SetAsHomePageAsync(Guid id)
{ {

25
modules/cms-kit/src/Volo.CmsKit.Admin.Web/CmsKitAdminWebModule.cs

@ -1,19 +1,19 @@
using Microsoft.AspNetCore.Mvc.RazorPages; using Microsoft.AspNetCore.Mvc.RazorPages;
using Microsoft.Extensions.DependencyInjection; using Microsoft.Extensions.DependencyInjection;
using Volo.Abp.AspNetCore.Mvc; using Volo.Abp.AspNetCore.Mvc;
using Volo.CmsKit.Admin.Web.Menus;
using Volo.Abp.AspNetCore.Mvc.Localization; 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.Modularity;
using Volo.Abp.UI.Navigation; using Volo.Abp.UI.Navigation;
using Volo.Abp.VirtualFileSystem; using Volo.Abp.VirtualFileSystem;
using Volo.CmsKit.Admin.MediaDescriptors;
using Volo.CmsKit.Admin.Web.Menus;
using Volo.CmsKit.Localization; using Volo.CmsKit.Localization;
using Volo.CmsKit.Web;
using Volo.CmsKit.Permissions; using Volo.CmsKit.Permissions;
using Volo.Abp.AspNetCore.Mvc.UI.Theme.Shared.PageToolbars; using Volo.CmsKit.Web;
using Volo.Abp.Localization;
using Volo.Abp.AutoMapper;
using Volo.Abp.Http.ProxyScripting.Generators.JQuery;
using Volo.CmsKit.Admin.MediaDescriptors;
namespace Volo.CmsKit.Admin.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", CmsKitAdminPermissions.Pages.Default);
options.Conventions.AuthorizeFolder("/CmsKit/Pages/Create", CmsKitAdminPermissions.Pages.Create); options.Conventions.AuthorizeFolder("/CmsKit/Pages/Create", CmsKitAdminPermissions.Pages.Create);
options.Conventions.AuthorizeFolder("/CmsKit/Pages/Update", CmsKitAdminPermissions.Pages.Update); 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", CmsKitAdminPermissions.Blogs.Default);
options.Conventions.AuthorizeFolder("/CmsKit/Blogs/Create", CmsKitAdminPermissions.Blogs.Create); options.Conventions.AuthorizeFolder("/CmsKit/Blogs/Create", CmsKitAdminPermissions.Blogs.Create);
options.Conventions.AuthorizeFolder("/CmsKit/Blogs/Update", CmsKitAdminPermissions.Blogs.Update); options.Conventions.AuthorizeFolder("/CmsKit/Blogs/Update", CmsKitAdminPermissions.Blogs.Update);
@ -98,7 +99,7 @@ public class CmsKitAdminWebModule : AbpModule
Configure<AbpPageToolbarOptions>(options => Configure<AbpPageToolbarOptions>(options =>
{ {
options.Configure<Volo.CmsKit.Admin.Web.Pages.CmsKit.Tags.IndexModel>( options.Configure<Pages.CmsKit.Tags.IndexModel>(
toolbar => toolbar =>
{ {
toolbar.AddButton( toolbar.AddButton(
@ -110,7 +111,7 @@ public class CmsKitAdminWebModule : AbpModule
} }
); );
options.Configure<Volo.CmsKit.Admin.Web.Pages.CmsKit.Pages.IndexModel>( options.Configure<Pages.CmsKit.Pages.IndexModel>(
toolbar => toolbar =>
{ {
toolbar.AddButton( toolbar.AddButton(
@ -121,7 +122,7 @@ public class CmsKitAdminWebModule : AbpModule
); );
}); });
options.Configure<Volo.CmsKit.Admin.Web.Pages.CmsKit.Blogs.IndexModel>( options.Configure<Pages.CmsKit.Blogs.IndexModel>(
toolbar => toolbar =>
{ {
toolbar.AddButton( toolbar.AddButton(
@ -133,7 +134,7 @@ public class CmsKitAdminWebModule : AbpModule
); );
}); });
options.Configure<Volo.CmsKit.Admin.Web.Pages.CmsKit.BlogPosts.IndexModel>( options.Configure<Pages.CmsKit.BlogPosts.IndexModel>(
toolbar => toolbar =>
{ {
toolbar.AddButton( toolbar.AddButton(
@ -145,7 +146,7 @@ public class CmsKitAdminWebModule : AbpModule
); );
}); });
options.Configure<Volo.CmsKit.Admin.Web.Pages.CmsKit.Menus.MenuItems.IndexModel>( options.Configure<Pages.CmsKit.Menus.MenuItems.IndexModel>(
toolbar => toolbar =>
{ {
toolbar.AddButton( toolbar.AddButton(

2
modules/cms-kit/src/Volo.CmsKit.Admin.Web/Pages/CmsKit/Pages/index.js

@ -49,7 +49,7 @@ $(function (){
}, },
{ {
text: l('SetAsHomePage'), text: l('SetAsHomePage'),
visible: abp.auth.isGranted('CmsKit.Pages.Delete'), visible: abp.auth.isGranted('CmsKit.Pages.SetAsHomePage'),
action: function (data) { action: function (data) {
pagesService pagesService
.setAsHomePage(data.record.id) .setAsHomePage(data.record.id)

Loading…
Cancel
Save