mirror of
https://github.com/OrchardCMS/Orchard.git
synced 2026-02-09 09:16:41 +08:00
#18009: Fixing versioned fields storage
Work Item: 18009 --HG-- branch : 1.x
This commit is contained in:
+1
-1
@@ -1,5 +1,5 @@
|
|||||||
1e6a2d32657e96db406ad54c318e09c1fe2ed889 src/Orchard.Web/Modules/Orchard.Forms
|
1e6a2d32657e96db406ad54c318e09c1fe2ed889 src/Orchard.Web/Modules/Orchard.Forms
|
||||||
4d999d9b380e32e74f5ef1339bf883c18586f395 src/Orchard.Web/Modules/Orchard.Projections
|
465ac29c0285497155bf93c0322ddfc5577ac322 src/Orchard.Web/Modules/Orchard.Projections
|
||||||
15cec8c8d8791c108e1f63f40b2357c6bc6605e7 src/Orchard.Web/Modules/Orchard.Rules
|
15cec8c8d8791c108e1f63f40b2357c6bc6605e7 src/Orchard.Web/Modules/Orchard.Rules
|
||||||
65057c6a5cd71f7994ba9bcbeece50dbb737620e src/Orchard.Web/Modules/Orchard.TaskLease
|
65057c6a5cd71f7994ba9bcbeece50dbb737620e src/Orchard.Web/Modules/Orchard.TaskLease
|
||||||
ebdcbf2c57f9f888dcdc2b577a1e9c6e8f9c1957 src/Orchard.Web/Modules/Orchard.Tokens
|
ebdcbf2c57f9f888dcdc2b577a1e9c6e8f9c1957 src/Orchard.Web/Modules/Orchard.Tokens
|
||||||
|
|||||||
+3
-3
@@ -100,7 +100,7 @@ namespace Orchard.Tests.ContentManagement.Drivers.FieldStorage {
|
|||||||
storage.Set(null, "one");
|
storage.Set(null, "one");
|
||||||
storage.Set("alpha", "two");
|
storage.Set("alpha", "two");
|
||||||
|
|
||||||
Assert.That(part.ContentItem.Record.Data, Is.EqualTo("<Data><Foo><Bar alpha=\"two\">one</Bar></Foo></Data>"));
|
Assert.That(part.ContentItem.VersionRecord.Data, Is.EqualTo("<Data><Foo><Bar alpha=\"two\">one</Bar></Foo></Data>"));
|
||||||
}
|
}
|
||||||
|
|
||||||
[Test]
|
[Test]
|
||||||
@@ -111,8 +111,8 @@ namespace Orchard.Tests.ContentManagement.Drivers.FieldStorage {
|
|||||||
storage.Set(null, "one");
|
storage.Set(null, "one");
|
||||||
storage.Set("alpha", "two");
|
storage.Set("alpha", "two");
|
||||||
|
|
||||||
Assert.That(part.ContentItem.Record.Data, Is.EqualTo("<Data><Foo><Bar alpha=\"two\">one</Bar></Foo></Data>"));
|
Assert.That(part.ContentItem.VersionRecord.Data, Is.EqualTo("<Data><Foo><Bar alpha=\"two\">one</Bar></Foo></Data>"));
|
||||||
part.ContentItem.Record.Data = "<Data><Foo><Bar alpha=\"four\">three</Bar></Foo></Data>";
|
part.ContentItem.VersionRecord.Data = "<Data><Foo><Bar alpha=\"four\">three</Bar></Foo></Data>";
|
||||||
|
|
||||||
storage.Set(null, "three");
|
storage.Set(null, "three");
|
||||||
storage.Set("alpha", "four");
|
storage.Set("alpha", "four");
|
||||||
|
|||||||
@@ -41,6 +41,7 @@ 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,
|
||||||
@@ -56,3 +57,4 @@ namespace Orchard.ContentManagement.FieldStorage {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|||||||
@@ -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.Infoset.Element, partName, fieldName, name),
|
(name, valueType) => Get(infosetPart.ContentItem.IsPublished() ? infosetPart.Infoset.Element : infosetPart.VersionInfoset.Element, partName, fieldName, name),
|
||||||
(name, valueType, value) => Set(infosetPart.Infoset.Element, partName, fieldName, name, value));
|
(name, valueType, value) => Set(infosetPart.ContentItem.IsPublished() ? 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) {
|
||||||
|
|||||||
Reference in New Issue
Block a user