36 $this->irss_wrapper = $DIC->htmlLearningModule()->internal()->repo()->irss();
41 return array(
"4.1.0");
44 protected function getXmlNamespace(
string $a_entity,
string $a_schema_version): string
46 return "https://www.ilias.de/xml/Modules/HTMLLearningModule/" . $a_entity;
49 protected function getTypes(
string $a_entity,
string $a_version): array
51 if ($a_entity ===
"htlm") {
57 "Description" =>
"text",
58 "StartFile" =>
"text",
59 "Dir" =>
"rscontainer");
65 public function readData(
string $a_entity,
string $a_version, array $a_ids): void
69 if ($a_entity ===
"htlm") {
73 " startfile start_file" .
74 " FROM file_based_lm JOIN object_data ON (file_based_lm.id = object_data.obj_id) " .
76 $ilDB->in(
"id", $a_ids,
false,
"integer"));
82 public function getXmlRecord(
string $a_entity,
string $a_version, array $a_set): array
85 $a_set[
"Dir"] = $lm->getResource()->getIdentification();
97 if ($entity ===
"htlm" && $field ===
"Dir") {
111 public function importRecord(
string $a_entity, array $a_types, array $a_rec,
ilImportMapping $a_mapping,
string $a_schema_version):
void 117 if ($new_id = $a_mapping->
getMapping(
'components/ILIAS/Container',
'objs', $a_rec[
'Id'])) {
122 $newObj->setType(
"htlm");
123 $newObj->create(
true);
126 $newObj->setTitle($a_rec[
"Title"]);
127 $newObj->setDescription($a_rec[
"Description"]);
128 $newObj->setStartFile($a_rec[
"StartFile"],
true);
130 $dir = str_replace(
"..",
"", $a_rec[
"Dir"]);
133 $rid = $this->irss_wrapper->createContainerFromLocalDir(
140 $newObj->setRID($rid);
143 $newObj->update(
true);
144 $this->current_obj = $newObj;
146 $a_mapping->
addMapping(
"components/ILIAS/HTMLLearningModule",
"htlm", $a_rec[
"Id"], $newObj->getId());
148 "components/ILIAS/MetaData",
150 $a_rec[
"Id"] .
":0:htlm",
151 $newObj->getId() .
":0:htlm"
getXmlNamespace(string $a_entity, string $a_schema_version)
File Based Learning Module (HTML) object.
getContainerExportConfig(array $record, string $entity, string $schema_version, string $field, string $value)
addMapping(string $a_comp, string $a_entity, string $a_old_id, string $a_new_id)
readData(string $a_entity, string $a_version, array $a_ids)
ilObjFileBasedLM $current_obj
getIRSSContainerExportConfig(StorableResource $source_container, string $source_path, string $target_path="")
while($session_entry=$r->fetchRow(ilDBConstants::FETCHMODE_ASSOC)) return null
getMapping(string $a_comp, string $a_entity, string $a_old_id)
IRSSWrapper $irss_wrapper
getXmlRecord(string $a_entity, string $a_version, array $a_set)
importRecord(string $a_entity, array $a_types, array $a_rec, ilImportMapping $a_mapping, string $a_schema_version)
Needs to be overwritten for import use case.
getTypes(string $a_entity, string $a_version)
getDirectDataFromQuery(string $a_query, bool $a_convert_to_leading_upper=true, bool $a_set=true)
Get data from query.This is a standard procedure, all db field names are directly mapped to abstract ...
static getInstanceByObjId(?int $obj_id, bool $stop_on_error=true)
get an instance of an Ilias object by object id
__construct(Container $dic, ilPlugin $plugin)
HTML learning module data set class.
stripTags(array $rec, array $omit_keys=[])