mirror of
https://github.com/OrchardCMS/Orchard.git
synced 2025-12-03 12:03:51 +08:00
Merge
--HG-- branch : dev
This commit is contained in:
@@ -249,8 +249,7 @@ namespace Orchard.Packaging.Controllers {
|
||||
ExtensionDescriptor extensionDescriptor = _packageManager.GetExtensionDescriptor(package);
|
||||
|
||||
List<PackagingInstallFeatureViewModel> features = extensionDescriptor.Features
|
||||
.Where(featureDescriptor => !DefaultExtensionTypes.IsTheme(featureDescriptor.Extension.ExtensionType) &&
|
||||
!featureDescriptor.Id.Equals(featureDescriptor.Extension.Id))
|
||||
.Where(featureDescriptor => !DefaultExtensionTypes.IsTheme(featureDescriptor.Extension.ExtensionType))
|
||||
.Select(featureDescriptor => new PackagingInstallFeatureViewModel {
|
||||
Enable = true, // by default all features are enabled
|
||||
FeatureDescriptor = featureDescriptor
|
||||
@@ -278,9 +277,12 @@ namespace Orchard.Packaging.Controllers {
|
||||
}
|
||||
|
||||
InstallPackage(packageId, version, source);
|
||||
|
||||
// Enable selected features
|
||||
_featureManager.EnableFeatures(packagingInstallViewModel.Features
|
||||
.Select(feature => feature.FeatureDescriptor.Id));
|
||||
if (packagingInstallViewModel.Features.Count > 0) {
|
||||
_featureManager.EnableFeatures(packagingInstallViewModel.Features
|
||||
.Select(feature => feature.FeatureDescriptor.Id));
|
||||
}
|
||||
|
||||
return RedirectToAction(redirectTo == "Themes" ? "Themes" : "Modules");
|
||||
}
|
||||
|
||||
@@ -76,8 +76,9 @@ namespace Orchard.Packaging.Services {
|
||||
public ExtensionDescriptor GetExtensionDescriptor(IPackage package) {
|
||||
IPackageFile packageFile = package.GetFiles().FirstOrDefault(file => Path.GetFileName(file.Path).Equals("module.txt", StringComparison.OrdinalIgnoreCase));
|
||||
if (packageFile != null) {
|
||||
string extensionId = Path.GetFileName(Path.GetDirectoryName(packageFile.Path).TrimEnd('/', '\\'));
|
||||
using (StreamReader streamReader = new StreamReader(packageFile.GetStream())) {
|
||||
return ExtensionFolders.GetDescriptorForExtension("", package.Id, DefaultExtensionTypes.Module, streamReader.ReadToEnd());
|
||||
return ExtensionFolders.GetDescriptorForExtension("", extensionId, DefaultExtensionTypes.Module, streamReader.ReadToEnd());
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -21,7 +21,13 @@
|
||||
|
||||
@Html.EditorFor(m => m.Features[index].Enable)
|
||||
|
||||
<label class="forcheckbox" for="@Html.FieldIdFor(m => m.Features[index].Enable)">@feature.FeatureDescriptor.Name</label>
|
||||
<label class="forcheckbox" for="@Html.FieldIdFor(m => m.Features[index].Enable)">
|
||||
@if (!string.IsNullOrEmpty(@feature.FeatureDescriptor.Name)) {
|
||||
@feature.FeatureDescriptor.Name
|
||||
} else {
|
||||
@feature.FeatureDescriptor.Id
|
||||
}
|
||||
</label>
|
||||
@{ index++; }
|
||||
</div>
|
||||
}
|
||||
|
||||
@@ -187,7 +187,7 @@ namespace Orchard.Data.Migration {
|
||||
return dataMigration
|
||||
.GetType()
|
||||
.GetMethods(BindingFlags.Public | BindingFlags.Instance)
|
||||
.Select(mi => GetUpdateMethod(mi))
|
||||
.Select(GetUpdateMethod)
|
||||
.Where(tuple => tuple != null)
|
||||
.ToDictionary(tuple => tuple.Item1, tuple => tuple.Item2);
|
||||
}
|
||||
|
||||
@@ -43,7 +43,7 @@ namespace Orchard.Environment.Features {
|
||||
var updatedFeatures = currentShellDescriptor.Features
|
||||
.Union(featureNames
|
||||
.Where(name => !currentShellDescriptor.Features.Any(sf => sf.Name == name))
|
||||
.Select(name => new ShellFeature {Name = name}));
|
||||
.Select(name => new ShellFeature {Name = name}));
|
||||
|
||||
_shellDescriptorManager.UpdateShellDescriptor(
|
||||
currentShellDescriptor.SerialNumber,
|
||||
|
||||
Reference in New Issue
Block a user