mirror of
https://github.com/OrchardCMS/Orchard.git
synced 2025-09-22 20:13:50 +08:00
Fixing field indexing in Projector
--HG-- branch : 1.x
This commit is contained in:
@@ -1,5 +1,5 @@
|
|||||||
ec573e5476f7e8a5a61593d6393e9985e9484fcc src/Orchard.Web/Modules/Orchard.Forms
|
ec573e5476f7e8a5a61593d6393e9985e9484fcc src/Orchard.Web/Modules/Orchard.Forms
|
||||||
0d1100754d594a2977eaab40630f1c46a9e8cf2c src/Orchard.Web/Modules/Orchard.Projections
|
988aec9e8b953032c14807e2a95bc43a33a3cc24 src/Orchard.Web/Modules/Orchard.Projections
|
||||||
01b83c05050bb731d9f69256bbe8884d458ea1c9 src/Orchard.Web/Modules/Orchard.Rules
|
01b83c05050bb731d9f69256bbe8884d458ea1c9 src/Orchard.Web/Modules/Orchard.Rules
|
||||||
65057c6a5cd71f7994ba9bcbeece50dbb737620e src/Orchard.Web/Modules/Orchard.TaskLease
|
65057c6a5cd71f7994ba9bcbeece50dbb737620e src/Orchard.Web/Modules/Orchard.TaskLease
|
||||||
460f08a0d0befd36a3f7e974d8b782ae3df747e7 src/Orchard.Web/Modules/Orchard.Tokens
|
460f08a0d0befd36a3f7e974d8b782ae3df747e7 src/Orchard.Web/Modules/Orchard.Tokens
|
||||||
|
@@ -1,5 +1,5 @@
|
|||||||
@{
|
@{
|
||||||
string name = Model.Field.DisplayName;
|
string name = Model.ContentField.DisplayName;
|
||||||
string value = Model.Value;
|
string value = Model.Value;
|
||||||
}
|
}
|
||||||
@if (HasText(name) && HasText(value)) {
|
@if (HasText(name) && HasText(value)) {
|
||||||
|
@@ -41,19 +41,17 @@ namespace Orchard.ContentManagement.FieldStorage {
|
|||||||
public void Set<T>(string name, T value) {
|
public void Set<T>(string name, T value) {
|
||||||
_concreteStorage.Set(name, value);
|
_concreteStorage.Set(name, value);
|
||||||
|
|
||||||
if (_contentPart.ContentItem.IsPublished()) {
|
var context = new FieldStorageEventContext {
|
||||||
var context = new FieldStorageEventContext {
|
FieldName = _contentPartFieldDefinition.Name,
|
||||||
FieldName = _contentPartFieldDefinition.Name,
|
PartName = _contentPart.PartDefinition.Name,
|
||||||
PartName = _contentPart.PartDefinition.Name,
|
Value = value,
|
||||||
Value = value,
|
ValueName = name,
|
||||||
ValueName = name,
|
ValueType = typeof (T),
|
||||||
ValueType = typeof (T),
|
Content = _contentPart
|
||||||
Content = _contentPart
|
};
|
||||||
};
|
|
||||||
|
|
||||||
foreach (var fieldEvent in _events) {
|
foreach (var fieldEvent in _events) {
|
||||||
fieldEvent.SetCalled(context);
|
fieldEvent.SetCalled(context);
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@@ -14,8 +14,8 @@ namespace Orchard.ContentManagement.FieldStorage.InfosetStorage {
|
|||||||
var infosetPart = contentPart.As<InfosetPart>();
|
var infosetPart = contentPart.As<InfosetPart>();
|
||||||
|
|
||||||
return new SimpleFieldStorage(
|
return new SimpleFieldStorage(
|
||||||
(name, valueType) => Get(infosetPart.ContentItem.IsPublished() ? infosetPart.Infoset.Element : infosetPart.VersionInfoset.Element, partName, fieldName, name),
|
(name, valueType) => Get(infosetPart.ContentItem.VersionRecord == null ? infosetPart.Infoset.Element : infosetPart.VersionInfoset.Element, partName, fieldName, name),
|
||||||
(name, valueType, value) => Set(infosetPart.ContentItem.IsPublished() ? infosetPart.Infoset.Element : infosetPart.VersionInfoset.Element, partName, fieldName, name, value));
|
(name, valueType, value) => Set(infosetPart.ContentItem.VersionRecord == null ? infosetPart.Infoset.Element : infosetPart.VersionInfoset.Element, partName, fieldName, name, value));
|
||||||
}
|
}
|
||||||
|
|
||||||
private static string Get(XElement element, string partName, string fieldName, string valueName) {
|
private static string Get(XElement element, string partName, string fieldName, string valueName) {
|
||||||
|
@@ -116,7 +116,8 @@ namespace Orchard.Environment.State {
|
|||||||
FeatureDescriptor = featureDescriptor,
|
FeatureDescriptor = featureDescriptor,
|
||||||
FeatureState = shellState.Features.FirstOrDefault(s => s.Name == featureDescriptor.Id),
|
FeatureState = shellState.Features.FirstOrDefault(s => s.Name == featureDescriptor.Id),
|
||||||
})
|
})
|
||||||
.Where(entry => entry.FeatureState != null);
|
.Where(entry => entry.FeatureState != null)
|
||||||
|
.ToArray();
|
||||||
|
|
||||||
// get loaded feature information
|
// get loaded feature information
|
||||||
var loadedFeatures = _extensionManager.LoadFeatures(orderedFeatureDescriptorsAndStates.Select(entry => entry.FeatureDescriptor)).ToArray();
|
var loadedFeatures = _extensionManager.LoadFeatures(orderedFeatureDescriptorsAndStates.Select(entry => entry.FeatureDescriptor)).ToArray();
|
||||||
@@ -131,7 +132,7 @@ namespace Orchard.Environment.State {
|
|||||||
},
|
},
|
||||||
entry.FeatureDescriptor,
|
entry.FeatureDescriptor,
|
||||||
entry.FeatureState,
|
entry.FeatureState,
|
||||||
});
|
}).ToList();
|
||||||
|
|
||||||
// find feature state that is beyond what's currently available from modules
|
// find feature state that is beyond what's currently available from modules
|
||||||
var additionalState = shellState.Features.Except(loadedEntries.Select(entry => entry.FeatureState));
|
var additionalState = shellState.Features.Except(loadedEntries.Select(entry => entry.FeatureState));
|
||||||
@@ -152,7 +153,7 @@ namespace Orchard.Environment.State {
|
|||||||
FeatureDescriptor = featureDescriptor,
|
FeatureDescriptor = featureDescriptor,
|
||||||
FeatureState = featureState
|
FeatureState = featureState
|
||||||
};
|
};
|
||||||
}));
|
})).ToArray();
|
||||||
|
|
||||||
// lower enabled states in reverse order
|
// lower enabled states in reverse order
|
||||||
foreach (var entry in allEntries.Reverse().Where(entry => entry.FeatureState.EnableState == ShellFeatureState.State.Falling)) {
|
foreach (var entry in allEntries.Reverse().Where(entry => entry.FeatureState.EnableState == ShellFeatureState.State.Falling)) {
|
||||||
|
Reference in New Issue
Block a user