#3627: Added support for recipes harvested from themes.

Fixes #3627
This commit is contained in:
Sipke Schoorstra
2015-07-16 19:54:34 +01:00
parent 50002ee10d
commit 879c42a0a9

View File

@@ -117,8 +117,7 @@ namespace Orchard.Modules.Controllers {
return new HttpUnauthorizedResult(); return new HttpUnauthorizedResult();
IEnumerable<ModuleEntry> modules = _extensionManager.AvailableExtensions() IEnumerable<ModuleEntry> modules = _extensionManager.AvailableExtensions()
.Where(extensionDescriptor => DefaultExtensionTypes.IsModule(extensionDescriptor.ExtensionType)) .Where(extensionDescriptor => ExtensionIsAllowed(extensionDescriptor))
.Where(extensionDescriptor => ModuleIsAllowed(extensionDescriptor))
.OrderBy(extensionDescriptor => extensionDescriptor.Name) .OrderBy(extensionDescriptor => extensionDescriptor.Name)
.Select(extensionDescriptor => new ModuleEntry { Descriptor = extensionDescriptor }); .Select(extensionDescriptor => new ModuleEntry { Descriptor = extensionDescriptor });
@@ -143,7 +142,7 @@ namespace Orchard.Modules.Controllers {
return new HttpUnauthorizedResult(); return new HttpUnauthorizedResult();
ModuleEntry module = _extensionManager.AvailableExtensions() ModuleEntry module = _extensionManager.AvailableExtensions()
.Where(extensionDescriptor => extensionDescriptor.Id == moduleId && ModuleIsAllowed(extensionDescriptor)) .Where(extensionDescriptor => extensionDescriptor.Id == moduleId && ExtensionIsAllowed(extensionDescriptor))
.Select(extensionDescriptor => new ModuleEntry { Descriptor = extensionDescriptor }).FirstOrDefault(); .Select(extensionDescriptor => new ModuleEntry { Descriptor = extensionDescriptor }).FirstOrDefault();
if (module == null) { if (module == null) {
@@ -188,7 +187,7 @@ namespace Orchard.Modules.Controllers {
return View(new FeaturesViewModel { return View(new FeaturesViewModel {
Features = features, Features = features,
IsAllowed = ModuleIsAllowed IsAllowed = ExtensionIsAllowed
}); });
} }
@@ -204,7 +203,7 @@ namespace Orchard.Modules.Controllers {
} }
if (ModelState.IsValid) { if (ModelState.IsValid) {
var availableFeatures = _moduleService.GetAvailableFeatures().Where(feature => ModuleIsAllowed(feature.Descriptor.Extension)).ToList(); var availableFeatures = _moduleService.GetAvailableFeatures().Where(feature => ExtensionIsAllowed(feature.Descriptor.Extension)).ToList();
var selectedFeatures = availableFeatures.Where(x => featureIds.Contains(x.Descriptor.Id)).ToList(); var selectedFeatures = availableFeatures.Where(x => featureIds.Contains(x.Descriptor.Id)).ToList();
var enabledFeatures = availableFeatures.Where(x => x.IsEnabled && featureIds.Contains(x.Descriptor.Id)).Select(x => x.Descriptor.Id).ToList(); var enabledFeatures = availableFeatures.Where(x => x.IsEnabled && featureIds.Contains(x.Descriptor.Id)).Select(x => x.Descriptor.Id).ToList();
var disabledFeatures = availableFeatures.Where(x => !x.IsEnabled && featureIds.Contains(x.Descriptor.Id)).Select(x => x.Descriptor.Id).ToList(); var disabledFeatures = availableFeatures.Where(x => !x.IsEnabled && featureIds.Contains(x.Descriptor.Id)).Select(x => x.Descriptor.Id).ToList();
@@ -248,7 +247,7 @@ namespace Orchard.Modules.Controllers {
/// <summary> /// <summary>
/// Checks whether the module is allowed for the current tenant /// Checks whether the module is allowed for the current tenant
/// </summary> /// </summary>
private bool ModuleIsAllowed(ExtensionDescriptor extensionDescriptor) { private bool ExtensionIsAllowed(ExtensionDescriptor extensionDescriptor) {
return _shellSettings.Modules.Length == 0 || _shellSettings.Modules.Contains(extensionDescriptor.Id); return _shellSettings.Modules.Length == 0 || _shellSettings.Modules.Contains(extensionDescriptor.Id);
} }
} }