16966 Remove module management permission

--HG--
branch : dev
This commit is contained in:
Suha Can
2010-12-08 14:34:50 -08:00
parent d4071c2269
commit cd2f506a51
3 changed files with 7 additions and 6 deletions

View File

@@ -1,4 +1,5 @@
using Orchard.Localization; using Orchard.Localization;
using Orchard.Security;
using Orchard.UI.Navigation; using Orchard.UI.Navigation;
namespace Orchard.Modules { namespace Orchard.Modules {
@@ -13,7 +14,7 @@ namespace Orchard.Modules {
.Add(T("Features"), "0", item => item.Action("Features", "Admin", new { area = "Orchard.Modules" }) .Add(T("Features"), "0", item => item.Action("Features", "Admin", new { area = "Orchard.Modules" })
.Permission(Permissions.ManageFeatures)) .Permission(Permissions.ManageFeatures))
.Add(T("Modules"), "5", item => item.Action("Index", "Admin", new { area = "Orchard.Modules" }) .Add(T("Modules"), "5", item => item.Action("Index", "Admin", new { area = "Orchard.Modules" })
.Permission(Permissions.ManageModules))); .Permission(StandardPermissions.SiteOwner)));
} }
} }
} }

View File

@@ -10,6 +10,7 @@ using Orchard.Localization;
using Orchard.Modules.Services; using Orchard.Modules.Services;
using Orchard.Modules.ViewModels; using Orchard.Modules.ViewModels;
using Orchard.Reports.Services; using Orchard.Reports.Services;
using Orchard.Security;
using Orchard.UI.Notify; using Orchard.UI.Notify;
namespace Orchard.Modules.Controllers { namespace Orchard.Modules.Controllers {
@@ -44,7 +45,7 @@ namespace Orchard.Modules.Controllers {
public IOrchardServices Services { get; set; } public IOrchardServices Services { get; set; }
public ActionResult Index() { public ActionResult Index() {
if (!Services.Authorizer.Authorize(Permissions.ManageModules, T("Not allowed to manage modules"))) if (!Services.Authorizer.Authorize(StandardPermissions.SiteOwner, T("Not allowed to manage modules")))
return new HttpUnauthorizedResult(); return new HttpUnauthorizedResult();
var modules = _extensionManager.AvailableExtensions().Where(x => DefaultExtensionTypes.IsModule(x.ExtensionType)); var modules = _extensionManager.AvailableExtensions().Where(x => DefaultExtensionTypes.IsModule(x.ExtensionType));

View File

@@ -4,20 +4,19 @@ using Orchard.Security.Permissions;
namespace Orchard.Modules { namespace Orchard.Modules {
public class Permissions : IPermissionProvider { public class Permissions : IPermissionProvider {
public static readonly Permission ManageModules = new Permission { Description = "Manage Modules", Name = "ManageModules" }; public static readonly Permission ManageFeatures = new Permission {Description = "Manage Features", Name = "ManageFeatures" };
public static readonly Permission ManageFeatures = new Permission { Description = "Manage Features", Name = "ManageFeatures", ImpliedBy = new[] {ManageModules}};
public virtual Feature Feature { get; set; } public virtual Feature Feature { get; set; }
public IEnumerable<Permission> GetPermissions() { public IEnumerable<Permission> GetPermissions() {
return new[] {ManageModules, ManageFeatures}; return new[] {ManageFeatures};
} }
public IEnumerable<PermissionStereotype> GetDefaultStereotypes() { public IEnumerable<PermissionStereotype> GetDefaultStereotypes() {
return new[] { return new[] {
new PermissionStereotype { new PermissionStereotype {
Name = "Administrator", Name = "Administrator",
Permissions = new[] {ManageModules} Permissions = new[] {ManageFeatures}
} }
}; };
} }