File tree 2 files changed +25
-16
lines changed
eZ/Publish/Core/settings/tests
src/lib/Persistence/Legacy/Content/Mapper
2 files changed +25
-16
lines changed Original file line number Diff line number Diff line change @@ -33,6 +33,7 @@ services:
33
33
- ['addSubscriber', ['@eZ\Publish\Core\Search\Common\EventSubscriber\SectionEventSubscriber']]
34
34
- ['addSubscriber', ['@eZ\Publish\Core\Search\Common\EventSubscriber\TrashEventSubscriber']]
35
35
- ['addSubscriber', ['@eZ\Publish\Core\Search\Common\EventSubscriber\UserEventSubscriber']]
36
+ - ['addSubscriber', ['@Ibexa\Core\Persistence\Legacy\Content\Mapper\ResolveVirtualFieldSubscriber']]
36
37
37
38
Doctrine\Common\EventManager : ~
38
39
Original file line number Diff line number Diff line change @@ -103,26 +103,34 @@ public function persistExternalStorageField(ResolveMissingFieldEvent $event): vo
103
103
$ this ->getDefaultStorageValue ()
104
104
);
105
105
106
- $ result = $ storage ->storeFieldData (
107
- $ content ->versionInfo ,
108
- $ field ,
109
- $ event ->getContext ()
110
- );
111
-
112
- if ($ result === true ) {
113
- $ storageValue = new StorageFieldValue ();
114
- $ converter = $ this ->converterRegistry ->getConverter ($ fieldDefinition ->fieldType );
115
- $ converter ->toStorageValue (
116
- $ field ->value ,
117
- $ storageValue
118
- );
119
-
120
- $ this ->contentGateway ->updateField (
106
+ if ($ field ->value ->data !== null ) {
107
+ $ result = $ storage ->storeFieldData (
108
+ $ content ->versionInfo ,
121
109
$ field ,
122
- $ storageValue
110
+ []
123
111
);
112
+
113
+ if ($ result === true ) {
114
+ $ storageValue = new StorageFieldValue ();
115
+ $ converter = $ this ->converterRegistry ->getConverter ($ fieldDefinition ->fieldType );
116
+ $ converter ->toStorageValue (
117
+ $ field ->value ,
118
+ $ storageValue
119
+ );
120
+
121
+ $ this ->contentGateway ->updateField (
122
+ $ field ,
123
+ $ storageValue
124
+ );
125
+ }
124
126
}
125
127
128
+ $ storage ->getFieldData (
129
+ $ content ->versionInfo ,
130
+ $ field ,
131
+ []
132
+ );
133
+
126
134
$ event ->setField ($ field );
127
135
}
128
136
You can’t perform that action at this time.
0 commit comments