From c940f83474b6e15b2f47ce04eb171336d5b2ff21 Mon Sep 17 00:00:00 2001 From: Jeff Bullock Date: Wed, 3 Apr 2013 15:54:20 +0100 Subject: [PATCH] Added ManageForms Permission --HG-- branch : 1.x extra : source : e56047c49121177ab4828fdcc5660643911eec9f --- src/Orchard.Web/Modules/Orchard.CustomForms/AdminMenu.cs | 2 +- .../Orchard.CustomForms/Controllers/AdminController.cs | 6 +++--- src/Orchard.Web/Modules/Orchard.CustomForms/Permissions.cs | 4 +++- 3 files changed, 7 insertions(+), 5 deletions(-) diff --git a/src/Orchard.Web/Modules/Orchard.CustomForms/AdminMenu.cs b/src/Orchard.Web/Modules/Orchard.CustomForms/AdminMenu.cs index ba3beb998..db91a58ac 100644 --- a/src/Orchard.Web/Modules/Orchard.CustomForms/AdminMenu.cs +++ b/src/Orchard.Web/Modules/Orchard.CustomForms/AdminMenu.cs @@ -11,7 +11,7 @@ namespace Orchard.CustomForms { builder.Add(T("Forms"), "4", menu => menu .Add(T("Manage Forms"), "1.0", - item => item.Action("Index", "Admin", new { area = "Orchard.CustomForms" }).Permission(StandardPermissions.SiteOwner)) + item => item.Action("Index", "Admin", new { area = "Orchard.CustomForms" }).Permission(Permissions.ManageForms)) ); } } diff --git a/src/Orchard.Web/Modules/Orchard.CustomForms/Controllers/AdminController.cs b/src/Orchard.Web/Modules/Orchard.CustomForms/Controllers/AdminController.cs index ffbd89837..6fd4f9597 100644 --- a/src/Orchard.Web/Modules/Orchard.CustomForms/Controllers/AdminController.cs +++ b/src/Orchard.Web/Modules/Orchard.CustomForms/Controllers/AdminController.cs @@ -35,7 +35,7 @@ namespace Orchard.CustomForms.Controllers { public Localizer T { get; set; } public ActionResult Index(CustomFormIndexOptions options, PagerParameters pagerParameters) { - if (!Services.Authorizer.Authorize(StandardPermissions.SiteOwner, T("Not authorized to list custom forms"))) + if (!Services.Authorizer.Authorize(Permissions.ManageForms, T("Not authorized to list custom forms"))) return new HttpUnauthorizedResult(); var pager = new Pager(_siteService.GetSiteSettings(), pagerParameters); @@ -82,7 +82,7 @@ namespace Orchard.CustomForms.Controllers { [HttpPost] [Core.Contents.Controllers.FormValueRequired("submit.BulkEdit")] public ActionResult Index(FormCollection input) { - if (!Services.Authorizer.Authorize(StandardPermissions.SiteOwner, T("Not authorized to manage customForm"))) + if (!Services.Authorizer.Authorize(Permissions.ManageForms, T("Not authorized to manage customForm"))) return new HttpUnauthorizedResult(); var viewModel = new CustomFormIndexViewModel { CustomForms = new List(), Options = new CustomFormIndexOptions() }; @@ -113,7 +113,7 @@ namespace Orchard.CustomForms.Controllers { } public ActionResult Item(int id, PagerParameters pagerParameters) { - if (!Services.Authorizer.Authorize(StandardPermissions.SiteOwner, T("Not authorized to manage customForm"))) + if (!Services.Authorizer.Authorize(Permissions.ManageForms, T("Not authorized to manage customForm"))) return new HttpUnauthorizedResult(); Pager pager = new Pager(_siteService.GetSiteSettings(), pagerParameters); diff --git a/src/Orchard.Web/Modules/Orchard.CustomForms/Permissions.cs b/src/Orchard.Web/Modules/Orchard.CustomForms/Permissions.cs index ced3a381c..fe9173268 100644 --- a/src/Orchard.Web/Modules/Orchard.CustomForms/Permissions.cs +++ b/src/Orchard.Web/Modules/Orchard.CustomForms/Permissions.cs @@ -12,6 +12,7 @@ namespace Orchard.CustomForms { public class Permissions : IPermissionProvider { private static readonly Permission SubmitAnyForm = new Permission { Description = "Submit any forms", Name = "Submit" }; private static readonly Permission SubmitForm = new Permission { Description = "Submit {0} forms", Name = "Submit_{0}", ImpliedBy = new[] { SubmitAnyForm } }; + public static readonly Permission ManageForms = new Permission { Description = "Manage custom forms", Name = "ManageForms" }; private readonly IContentDefinitionManager _contentDefinitionManager; private readonly IContentManager _contentManager; @@ -37,13 +38,14 @@ namespace Orchard.CustomForms { } yield return SubmitAnyForm; + yield return ManageForms; } public IEnumerable GetDefaultStereotypes() { return new[] { new PermissionStereotype { Name = "Administrator", - Permissions = new[] { SubmitAnyForm } + Permissions = new[] { SubmitAnyForm, ManageForms } }, new PermissionStereotype { Name = "Editor",