From 524fa7a3ba4e5e2f304fbfeeefebc74a15cd7f69 Mon Sep 17 00:00:00 2001 From: Keven Clausen Date: Sun, 8 Feb 2026 08:24:04 +0100 Subject: [PATCH] fix import position --- .../ILIAS/Export/xml/SchemaValidation/ilias_lso_9_0.xsd | 2 +- .../classes/Export/class.ilLearningSequenceXMLParser.php | 4 +++- .../classes/class.ilLearningSequenceImporter.php | 4 +++- 3 files changed, 7 insertions(+), 3 deletions(-) diff --git a/components/ILIAS/Export/xml/SchemaValidation/ilias_lso_9_0.xsd b/components/ILIAS/Export/xml/SchemaValidation/ilias_lso_9_0.xsd index 8dc84c42f433..b56a197e941a 100644 --- a/components/ILIAS/Export/xml/SchemaValidation/ilias_lso_9_0.xsd +++ b/components/ILIAS/Export/xml/SchemaValidation/ilias_lso_9_0.xsd @@ -39,7 +39,7 @@ - + diff --git a/components/ILIAS/LearningSequence/classes/Export/class.ilLearningSequenceXMLParser.php b/components/ILIAS/LearningSequence/classes/Export/class.ilLearningSequenceXMLParser.php index 70f492df4257..61ce8b9ed344 100644 --- a/components/ILIAS/LearningSequence/classes/Export/class.ilLearningSequenceXMLParser.php +++ b/components/ILIAS/LearningSequence/classes/Export/class.ilLearningSequenceXMLParser.php @@ -104,7 +104,9 @@ public function handleBeginTag( case Writer::TAG_LSITEM: $this->counter = (int) $attributes["ref_id"]; $this->ls_item_data[$this->counter]["ref_id"] = $attributes["ref_id"]; - $this->ls_item_data[$this->counter]["position"] = $attributes["position"]; + if (isset($attributes["position"])) { + $this->ls_item_data[$this->counter]["position"] = $attributes["position"]; + } break; case Writer::TAG_CONDITION: diff --git a/components/ILIAS/LearningSequence/classes/class.ilLearningSequenceImporter.php b/components/ILIAS/LearningSequence/classes/class.ilLearningSequenceImporter.php index 11b61a2cc49e..fdadca6e450c 100755 --- a/components/ILIAS/LearningSequence/classes/class.ilLearningSequenceImporter.php +++ b/components/ILIAS/LearningSequence/classes/class.ilLearningSequenceImporter.php @@ -121,7 +121,9 @@ protected function buildLSItems(array $ls_data, ilImportMapping $mapping): void $item_data["condition_value"] ); $item = $item->withPostCondition($post_condition); - $item = $item->withOrderNumber((int) $item_data["position"]); + if (isset($item_data["position"])) { + $item = $item->withOrderNumber((int) $item_data["position"]); + } $updated[] = $item; } }