19declare(strict_types=0);
38 $this->
logger = $DIC->logger()->crs();
39 $this->db =
$DIC->database();
42 public function init(): void
53 if ($new_id = $a_mapping->getMapping(
'components/ILIAS/Container',
'objs', $a_id)) {
57 elseif ($new_id = $a_mapping->getMapping(
'components/ILIAS/Container',
'refs',
'0')) {
61 $this->course->create();
64 if ($a_entity == self::ENTITY_OBJECTIVE) {
70 $parser->setMapping($a_mapping);
72 (new \ILIAS\Conditions\Export\Repository($this->db))->updateCourseValuesResultRangePercentage(
73 $this->course->getId(),
81 $parser->setXMLContent($a_xml);
82 $parser->startParsing();
85 $this->course->setOfflineStatus(
true);
86 $this->course->update();
88 $a_mapping->addMapping(
'components/ILIAS/Course',
'crs', $a_id, (
string) $this->course->getId());
89 $a_mapping->addMapping(
'components/ILIAS/AdvancedMetaData',
'parent', $a_id, (
string) $this->course->getId());
92 $this->course->deleteMetaData();
93 $a_mapping->addMapping(
94 'components/ILIAS/MetaData',
97 $this->course->getId() .
':0:crs'
100 $this->
logger->error(
'Parsing failed with message, "' . $e->getMessage() .
'".');
106 foreach ($this->final_processing_info as
$info) {
109 $parser->setMapping($mapping);
110 $parser->parseObjectDependencies();
117 $this->final_processing_info[] = array(
118 'course' => $a_course,
119 'entity' => $a_entity,
array $final_processing_info
afterContainerImportProcessing(\ilImportMapping $mapping)
importXmlRepresentation(string $a_entity, string $a_id, string $a_xml, ilImportMapping $a_mapping)
@noinspection PhpFieldAssignmentTypeMismatchInspection
addFinalProcessingInfo($a_course, $a_entity, $a_xml)
Component logger with individual log levels by component id.
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
static getInstanceByRefId(int $ref_id, bool $stop_on_error=true)
get an instance of an Ilias object by reference id
static _getAllReferences(int $id)
get all reference ids for object ID
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
if(!file_exists('../ilias.ini.php'))