27 $this->ds->setDSPrefix(
'ds');
41 'namespace' =>
'http://www.ilias.de/Modules/DataCollection/dcl/4_5',
42 'xsd_file" => "ilias_dcl_4_5.xsd',
43 'uses_dataset' =>
true,
54 $this->ds->setExportDirectories($this->dir_relative, $this->dir_absolute);
56 return $this->ds->getXmlRepresentation($a_entity, $a_schema_version, $a_id,
'',
true,
true);
72 $dependencies = array(
74 'component' =>
'Modules/File',
79 'component' =>
'Services/MediaObjects',
86 foreach ($a_ids as $dcl_obj_id) {
87 $sql =
"SELECT stloc2.value AS ext_id, f." . $this->db->quoteIdentifier(
'datatype_id') .
" FROM il_dcl_stloc2_value AS stloc2 "
88 .
"INNER JOIN il_dcl_record_field AS rf ON (rf." . $this->db->quoteIdentifier(
'id') .
" = stloc2." . $this->db->quoteIdentifier(
'record_field_id') .
") "
89 .
"INNER JOIN il_dcl_field AS f ON (rf." . $this->db->quoteIdentifier(
'field_id') .
" = f." . $this->db->quoteIdentifier(
'id') .
") " .
"INNER JOIN il_dcl_table AS t ON (t." . $this->db->quoteIdentifier(
'id') .
" = f." . $this->db->quoteIdentifier(
'table_id') .
") "
90 .
"WHERE t." . $this->db->quoteIdentifier(
'obj_id') .
" = " . $this->db->quote($dcl_obj_id,
'integer') .
" " .
"AND f.datatype_id IN ("
91 . implode(
',', array_keys($dependencies)) .
") AND stloc2." . $this->db->quoteIdentifier(
'value') .
" IS NOT NULL";
92 $set = $this->db->query($sql);
93 while ($rec = $this->db->fetchObject($set)) {
94 $dependencies[$rec->datatype_id][
'ids'][] = (int) $rec->ext_id;
120 $page_object_ids = array();
121 foreach ($a_ids as $dcl_obj_id) {
123 $sql =
"SELECT page_id FROM page_object "
124 .
"WHERE parent_type = " . $this->db->quote(
'dclf',
'text') .
" AND parent_id = " . $this->db->quote($dcl_obj_id,
'integer');
125 $set = $this->db->query($sql);
126 while ($rec = $this->db->fetchObject($set)) {
127 $page_object_ids[] =
"dclf:" . $rec->page_id;
130 if (count($page_object_ids)) {
133 'component' =>
'Services/COPage',
135 'ids' => $page_object_ids,
An exception for terminatinating execution or to throw for unit testing.
DataCollection dataset class.
Class ilDataCollectionExporter.
getValidSchemaVersions($a_entity)
getXmlExportTailDependencies($a_entity, $a_target_release, $a_ids)
getXmlExportHeadDependencies($a_entity, $a_target_release, $a_ids)
MOB/File fieldtypes objects are head dependencies They must be exported and imported first,...
getXmlRepresentation($a_entity, $a_schema_version, $a_id)
Get xml representation.
static makeDirParents($a_dir)
Create a new directory and all parent directories.
getAbsoluteExportDirectory()
Get absolute export directory.