From a6b4a1821bc86fc0633053a881fc40ffd23c624e Mon Sep 17 00:00:00 2001 From: fneumann Date: Tue, 16 Dec 2025 18:03:28 +0100 Subject: [PATCH] COPage: fix export of plugin data https://mantis.ilias.de/view.php?id=46622 --- .../COPage/classes/class.ilCOPageExporter.php | 21 ++++++++++++++++++- 1 file changed, 20 insertions(+), 1 deletion(-) diff --git a/components/ILIAS/COPage/classes/class.ilCOPageExporter.php b/components/ILIAS/COPage/classes/class.ilCOPageExporter.php index 0864c9c70e4f..74d72c33a885 100755 --- a/components/ILIAS/COPage/classes/class.ilCOPageExporter.php +++ b/components/ILIAS/COPage/classes/class.ilCOPageExporter.php @@ -144,6 +144,25 @@ public function getXmlExportTailDependencies( } if (!empty($this->plugin_dependencies)) { + if ($a_entity == "pg") { + foreach ($a_ids as $id) { + $id = explode(":", $id); + $langs = ["-"]; + if (!$this->config->getMasterLanguageOnly()) { + foreach (ilPageObject::lookupTranslations($id[0], $id[1]) as $t) { + if ($t != "-") { + $langs[] = $t; + } + } + } + foreach ($langs as $l) { + $page_object = ilPageObjectFactory::getInstance($id[0], $id[1], 0, $l); + $this->extractPluginProperties($page_object); + $page_object->freeDom(); + } + } + } + // use numeric keys instead plugin names return array_values($this->plugin_dependencies); } @@ -174,7 +193,6 @@ public function getXmlRepresentation( $page_object = ilPageObjectFactory::getInstance($id[0], $id[1], 0, $l); $page_object->buildDom(); $page_object->insertInstIntoIDs(IL_INST_ID); - $this->extractPluginProperties($page_object); $pxml = $page_object->getXMLFromDom(false, false, false, "", true); $pxml = str_replace("&", "&", $pxml); $a_media = ($this->config->getIncludeMedia()) @@ -241,6 +259,7 @@ protected function extractPluginProperties( } $a_page->buildDom(); + $a_page->insertInstIntoIDs(IL_INST_ID); $domdoc = $a_page->getDomDoc(); $xpath = new DOMXPath($domdoc); $nodes = $xpath->query("//PageContent[child::Plugged]");