diff --git a/components/ILIAS/Export/classes/ExportHandler/Manager/Handler.php b/components/ILIAS/Export/classes/ExportHandler/Manager/Handler.php index 8e416e54c445..431ec70f23eb 100644 --- a/components/ILIAS/Export/classes/ExportHandler/Manager/Handler.php +++ b/components/ILIAS/Export/classes/ExportHandler/Manager/Handler.php @@ -193,9 +193,10 @@ public function createExport( # write files from legacy export run dir to irss # tmp solution, remove later if no longer needed $writer = $this->export_handler->consumer()->handler()->exportWriter($element); + $is_container_export = $element->getIRSS()->isContainerExport(); $writer->writeDirectoryRecursive( $export_info->getLegacyExportRunDir(), - $export_info->getExportFolderName() + ($is_container_export) ? '' : $export_info->getExportFolderName() ); # delete legacy export run dir diff --git a/components/ILIAS/File/classes/class.ilFileExporter.php b/components/ILIAS/File/classes/class.ilFileExporter.php index 267492fd7bf0..a0dabd709652 100755 --- a/components/ILIAS/File/classes/class.ilFileExporter.php +++ b/components/ILIAS/File/classes/class.ilFileExporter.php @@ -88,11 +88,15 @@ public function getXmlRepresentation(string $a_entity, string $a_schema_version, protected function prepareExportDirectories( ilFileXMLWriter $writer ): void { - $path = str_replace('\\', '/', $this->exp->getExportDirInContainer()); + $path = str_replace('\\', '/', $this->exp->getPathToComponentExpDirInContainer()); $segments = explode('/', $path); array_shift($segments); - $target_dir_relative = implode('/', $segments) . '/expDir_1'; - $target_dir_absolute = rtrim($this->getAbsoluteExportDirectory(), '/') . '/' . $target_dir_relative; + $target_dir_relative = implode('/', $segments); + if ($this->exp->isContainerExport()) { + $target_dir_absolute = rtrim($this->getAbsoluteExportDirectory(), '/') . '/' . $this->exp->getPathToComponentExpDirInContainerWithLeadingSetNumber(); + } else { + $target_dir_absolute = rtrim($this->getAbsoluteExportDirectory(), '/') . '/' . $target_dir_relative; + } ilFileUtils::makeDirParents($target_dir_absolute); $writer->setFileTargetDirectories( $target_dir_relative,