mirror of
https://github.com/OrchardCMS/Orchard.git
synced 2025-10-15 03:25:23 +08:00
Simplifying code, and making more efficient too
--HG-- branch : dev
This commit is contained in:
@@ -15,13 +15,7 @@ namespace Orchard.Environment.Extensions {
|
|||||||
|
|
||||||
public static class ExtensionManagerExtensions {
|
public static class ExtensionManagerExtensions {
|
||||||
public static IEnumerable<FeatureDescriptor> EnabledFeatures(this IExtensionManager extensionManager, ShellDescriptor descriptor) {
|
public static IEnumerable<FeatureDescriptor> EnabledFeatures(this IExtensionManager extensionManager, ShellDescriptor descriptor) {
|
||||||
return extensionManager.AvailableExtensions()
|
return extensionManager.AvailableFeatures().Where(fd => descriptor.Features.Any(sf => sf.Name == fd.Id));
|
||||||
.SelectMany(extensionDescriptor => extensionDescriptor.Features)
|
|
||||||
.Where(featureDescriptor => IsFeatureEnabledInDescriptor(featureDescriptor, descriptor));
|
|
||||||
}
|
|
||||||
|
|
||||||
private static bool IsFeatureEnabledInDescriptor(FeatureDescriptor featureDescriptor, ShellDescriptor shellDescriptor) {
|
|
||||||
return shellDescriptor.Features.Any(shellDescriptorFeature => shellDescriptorFeature.Name == featureDescriptor.Id);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user