@@ -79,6 +79,8 @@ protected function addDocumentEditables(Document $document, AttributeSet $result
7979
8080 $ translations = $ service ->getTranslations ($ document );
8181
82+ $ this ->resetSourceDocument ($ document , $ result , $ translations );
83+
8284 if ($ document instanceof Document \PageSnippet) {
8385 $ editableNames = $ this ->EditableUsageResolver ->getUsedEditableNames ($ document );
8486 foreach ($ editableNames as $ editableName ) {
@@ -129,6 +131,8 @@ protected function addSettings(Document $document, AttributeSet $result): Docume
129131 $ service = new Document \Service ;
130132 $ translations = $ service ->getTranslations ($ document );
131133
134+ $ this ->resetSourceDocument ($ document , $ result , $ translations );
135+
132136 if ($ document instanceof Document \Page) {
133137 $ data = [
134138 'title ' => $ document ->getTitle (),
@@ -171,4 +175,18 @@ protected function doExportProperty(Property $property): bool
171175 'navigation_tabindex ' ,
172176 ]);
173177 }
178+
179+ private function resetSourceDocument (Document &$ document , AttributeSet $ result , array $ translations ): void
180+ {
181+ if ($ result ->getSourceLanguage () != $ result ->getTargetLanguages ()) {
182+ $ sourceDocumentId = $ translations [$ result ->getSourceLanguage ()] ?? false ;
183+ if ($ sourceDocumentId ) {
184+ $ sourceDocument = Document::getById ($ sourceDocumentId );
185+
186+ if ($ sourceDocument instanceof Document \PageSnippet) {
187+ $ document = $ sourceDocument ;
188+ }
189+ }
190+ }
191+ }
174192}
0 commit comments