5 require_once(
"Services/MetaData/classes/class.ilMDLanguageItem.php");
47 $this->
user = $DIC->user();
49 $this->db = $DIC->database();
53 $this->
setLMId($a_content_obj->getId());
73 include_once
'Services/MetaData/classes/class.ilMD.php';
80 $md_gen = $md->getGeneral();
84 foreach ($md_gen->getDescriptionIds() as
$id) {
85 $md_des = $md_gen->getDescription(
$id);
92 include_once(
"./Services/Object/classes/class.ilObjectLP.php");
95 $obj_lp->getCurrentMode(),
98 include_once(
"./Services/Tracking/classes/class.ilLPStatusWrapper.php");
114 include_once
'Services/MetaData/classes/class.ilMD.php';
117 $md_gen = $md->getGeneral();
118 if (is_object($md_gen)) {
119 foreach ($md_gen->getIdentifierIds() as
$id) {
120 $md_id = $md_gen->getIdentifier(
$id);
121 if ($md_id->getCatalog() ==
"ILIAS_NID") {
122 return $md_id->getEntry();
136 include_once
'Services/MetaData/classes/class.ilMDCreator.php';
141 $md_creator->setTitle($this->
getTitle());
142 $md_creator->setTitleLanguage(
$ilUser->getPref(
'language'));
144 $md_creator->setDescriptionLanguage(
$ilUser->getPref(
'language'));
145 $md_creator->setKeywordLanguage(
$ilUser->getPref(
'language'));
146 $md_creator->setLanguage(
$ilUser->getPref(
'language'));
147 $md_creator->create();
157 include_once(
"Services/MetaData/classes/class.ilMD.php");
158 include_once(
"Services/MetaData/classes/class.ilMDGeneral.php");
159 include_once(
"Services/MetaData/classes/class.ilMDDescription.php");
162 $md_gen = $md->getGeneral();
163 $md_gen->setTitle($this->
getTitle());
166 $md_des_ids = $md_gen->getDescriptionIds();
167 if (count($md_des_ids) > 0) {
168 $md_des = $md_gen->getDescription($md_des_ids[0]);
182 include_once(
'Services/MetaData/classes/class.ilMD.php');
194 $this->data_record = $a_record;
201 if (!isset($this->data_record)) {
202 $query =
"SELECT * FROM lm_data WHERE obj_id = " .
203 $ilDB->quote($this->
id,
"integer");
205 $this->data_record =
$ilDB->fetchAssoc($obj_set);
208 $this->type = $this->data_record[
"type"];
209 $this->
setImportId($this->data_record[
"import_id"]);
210 $this->
setTitle($this->data_record[
"title"]);
212 $this->
setLayout($this->data_record[
"layout"]);
226 $ilDB = $DIC->database();
229 "SELECT * FROM lm_data " .
230 " WHERE lm_id = " .
$ilDB->quote($a_lm_id,
"integer")
232 while ($rec =
$ilDB->fetchAssoc($set)) {
233 self::$data_records[$rec[
"obj_id"]] = $rec;
235 return count(self::$data_records);
246 $this->title = $a_title;
266 $this->short_title = $a_title;
285 protected static function _lookup($a_obj_id, $a_field)
289 $ilDB = $DIC->database();
291 if (isset(self::$data_records[$a_obj_id])) {
292 return self::$data_records[$a_obj_id][$a_field];
295 $query =
"SELECT " . $a_field .
" FROM lm_data WHERE obj_id = " .
296 $ilDB->quote($a_obj_id,
"integer");
298 $obj_rec =
$ilDB->fetchAssoc($obj_set);
300 return $obj_rec[$a_field];
311 return self::_lookup($a_obj_id,
"title");
322 return self::_lookup($a_obj_id,
"short_title");
335 $ilDB = $DIC->database();
337 if (isset(self::$data_records[$a_obj_id])) {
338 if ($a_lm_id == 0 || self::$data_records[$a_obj_id][
"lm_id"] == $a_lm_id) {
339 return self::$data_records[$a_obj_id][
"type"];
344 $and =
' AND lm_id = ' .
$ilDB->quote($a_lm_id,
'integer');
347 $query =
"SELECT type FROM lm_data WHERE obj_id = " .
$ilDB->quote($a_obj_id,
"integer") . $and;
349 $obj_rec =
$ilDB->fetchAssoc($obj_set);
351 return $obj_rec[
"type"];
359 $ilDB = $DIC->database();
361 $query =
"UPDATE lm_data SET " .
362 " title = " .
$ilDB->quote($a_title,
"text") .
363 " WHERE obj_id = " .
$ilDB->quote($a_obj_id,
"integer");
370 $this->description = $a_description;
390 $this->lm_id = $a_lm_id;
400 $this->content_object = $a_content_obj;
420 return $this->import_id;
425 $this->import_id = $a_id;
435 $this->layout = $a_val;
459 $ilDB = $DIC->database();
461 $q =
"UPDATE lm_data " .
463 "import_id = " .
$ilDB->quote($a_import_id,
"text") .
"," .
464 "last_update = " .
$ilDB->now() .
" " .
465 "WHERE obj_id = " .
$ilDB->quote($a_id,
"integer");
467 $ilDB->manipulate($q);
470 public function create($a_upload =
false)
476 $query =
"INSERT INTO lm_data (obj_id, title, type, layout, lm_id, import_id, short_title, create_date) " .
478 $ilDB->quote($this->
getId(),
"integer") .
"," .
485 ", " .
$ilDB->now() .
")";
486 $ilDB->manipulate($query);
489 include_once(
"./Services/History/classes/class.ilHistory.php");
494 $this->content_object->getType() .
":" . $this->
getType()
511 $query =
"UPDATE lm_data SET " .
512 " lm_id = " .
$ilDB->quote($this->
getLMId(),
"integer") .
516 " WHERE obj_id = " .
$ilDB->quote($this->
getId(),
"integer");
534 $ilDB = $DIC->database();
538 if (!is_array($a_pages)) {
546 if (empty($a_cont_obj_id)) {
547 $message = sprintf(
'ilLMObject::_writePublicAccessStatus(): Invalid parameter! $a_cont_obj_id is empty');
554 $lm_tree =
new ilTree($a_cont_obj_id);
555 $lm_tree->setTableNames(
'lm_tree',
'lm_data');
556 $lm_tree->setTreeTablePK(
"lm_id");
557 $lm_tree->readRootId();
560 $q =
"SELECT obj_id FROM lm_data " .
561 "WHERE lm_id = " .
$ilDB->quote($a_cont_obj_id,
"integer") .
" " .
567 $childs = $lm_tree->getChilds(
$row[
"obj_id"]);
569 foreach ($childs as $page) {
570 if ($page[
"type"] ==
"pg" and in_array($page[
"obj_id"], $a_pages)) {
571 array_push($a_pages,
$row[
"obj_id"]);
578 $q =
"UPDATE lm_data SET " .
579 "public_access = CASE " .
580 "WHEN " .
$ilDB->in(
"obj_id", $a_pages,
false,
"integer") .
" " .
581 "THEN " .
$ilDB->quote(
"y",
"text") .
582 "ELSE " .
$ilDB->quote(
"n",
"text") .
584 "WHERE lm_id = " .
$ilDB->quote($a_cont_obj_id,
"integer") .
" " .
585 "AND " .
$ilDB->in(
"type",
array(
"pg",
"st"),
false,
"text");
586 $ilDB->manipulate($q);
591 public static function _isPagePublic($a_node_id, $a_check_public_mode =
false)
595 $ilDB = $DIC->database();
598 if (empty($a_node_id)) {
599 $message = sprintf(
'ilLMObject::_isPagePublic(): Invalid parameter! $a_node_id is empty');
604 if ($a_check_public_mode ===
true) {
605 $lm_id = ilLMObject::_lookupContObjId($a_node_id);
607 $q =
"SELECT public_access_mode FROM content_object WHERE id = " .
612 if (
$row[
"public_access_mode"] ==
"complete") {
617 $q =
"SELECT public_access FROM lm_data WHERE obj_id=" .
618 $ilDB->quote($a_node_id,
"integer");
628 public function delete($a_delete_meta_data =
true)
632 $query =
"DELETE FROM lm_data WHERE obj_id = " .
654 $ilDB = $DIC->database();
656 $q =
"SELECT obj_id FROM lm_data WHERE import_id = " .
657 $ilDB->quote($a_import_id,
"text") .
" " .
658 " ORDER BY create_date DESC";
659 $obj_set =
$ilDB->query($q);
660 while ($obj_rec =
$ilDB->fetchAssoc($obj_set)) {
664 include_once(
"./Services/Help/classes/class.ilObjHelpSettings.php");
668 return $obj_rec[
"obj_id"];
688 $ilDB = $DIC->database();
690 $where = ($a_in_lm > 0)
691 ?
" AND lm_id = " .
$ilDB->quote($a_in_lm,
"integer") .
" " 694 $q =
"SELECT * FROM lm_data WHERE import_id = " .
695 $ilDB->quote($a_import_id,
"text") .
" " .
697 " ORDER BY create_date DESC";
698 $obj_set =
$ilDB->query($q);
701 while ($obj_rec =
$ilDB->fetchAssoc($obj_set)) {
722 $ilDB = $DIC->database();
724 include_once(
"./Services/Link/classes/class.ilInternalLink.php");
725 if (is_int(strpos($a_id,
"_"))) {
729 $q =
"SELECT * FROM lm_data WHERE obj_id = " .
730 $ilDB->quote($a_id,
"integer");
731 $obj_set =
$ilDB->query($q);
732 if ($obj_rec =
$ilDB->fetchAssoc($obj_set)) {
746 $ilDB = $DIC->database();
748 $type_str = (
$type !=
"")
749 ?
"AND type = " .
$ilDB->quote(
$type,
"text") .
" " 752 $query =
"SELECT * FROM lm_data " .
753 "WHERE lm_id= " .
$ilDB->quote(
$lm_id,
"integer") .
" " .
758 while ($obj_rec =
$ilDB->fetchAssoc($obj_set)) {
759 $obj_list[] =
array(
"obj_id" => $obj_rec[
"obj_id"],
760 "title" => $obj_rec[
"title"],
761 "import_id" => $obj_rec[
"import_id"],
762 "type" => $obj_rec[
"type"]);
775 $ilDB = $DIC->database();
777 $query =
"SELECT * FROM lm_data " .
778 "WHERE lm_id= " .
$ilDB->quote($a_cobj->getId(),
"integer");
781 require_once(
"./Modules/LearningModule/classes/class.ilLMObjectFactory.php");
782 while ($obj_rec =
$ilDB->fetchAssoc($obj_set)) {
785 if (is_object($lm_obj)) {
786 $lm_obj->delete(
true);
800 $ilDB = $DIC->database();
802 if (isset(self::$data_records[$a_id])) {
803 return self::$data_records[$a_id][
"lm_id"];
806 $query =
"SELECT lm_id FROM lm_data WHERE obj_id = " .
807 $ilDB->quote($a_id,
"integer");
809 $obj_rec =
$ilDB->fetchAssoc($obj_set);
811 return $obj_rec[
"lm_id"];
817 public static function putInTree($a_obj, $a_parent_id =
"", $a_target_node_id =
"")
823 $tree =
new ilTree($a_obj->getContentObject()->getId());
825 $tree->setTreeTablePK(
"lm_id");
828 $parent_id = ($a_parent_id !=
"")
830 : $tree->getRootId();
833 if ($a_target_node_id !=
"") {
837 if ($a_obj->getType() ==
"st") {
838 $s_types =
array(
"st",
"pg");
839 $childs = $tree->getChildsByTypeFilter($parent_id, $s_types);
842 $childs = $tree->getChildsByType($parent_id, $s_types);
845 if (count($childs) == 0) {
848 $target = $childs[count($childs) - 1][
"obj_id"];
852 if ($tree->isInTree($parent_id) && !$tree->isInTree($a_obj->getId())) {
853 $ilLog->write(
"LMObject::putInTree: insertNode, ID: " . $a_obj->getId() .
854 "Parent ID: " . $parent_id .
", Target: " .
$target);
856 $tree->insertNode($a_obj->getId(), $parent_id,
$target);
867 public static function getTree($a_cont_obj_id)
869 $tree =
new ilTree($a_cont_obj_id);
870 $tree->setTableNames(
'lm_tree',
'lm_data');
871 $tree->setTreeTablePK(
"lm_id");
884 if (!is_array($a_ids)) {
888 foreach ($a_ids as
$id) {
889 $path = $tree->getPathId($id);
891 foreach (
$path as $path_id) {
892 if ($path_id != $id && in_array($path_id, $a_ids)) {
907 foreach ($cut_ids as
$id) {
908 $curnode = $tree->getNodeData($id);
909 if ($tree->isInTree($id)) {
910 $tree->deleteTree($curnode);
926 $ilUser->clipboardDeleteObjectsOfType(
"pg");
927 $ilUser->clipboardDeleteObjectsOfType(
"st");
932 foreach ($a_ids as
$id) {
934 if ($tree->isInTree($id)) {
935 $curnode = $tree->getNodeData($id);
936 $subnodes = $tree->getSubTree($curnode);
937 foreach ($subnodes as $subnode) {
938 if ($subnode[
"child"] != $id) {
950 $order = ($curnode[
"lft"] > 0)
952 : (
int) ($order + 1);
982 include_once(
"./Modules/LearningModule/classes/class.ilStructureObject.php");
983 include_once(
"./Modules/LearningModule/classes/class.ilLMPageObject.php");
988 if ($item_type ==
"st") {
990 } elseif ($item_type ==
"pg") {
994 $ilLog->write(
"Getting from clipboard type " . $item_type .
", " .
995 "Item ID: " . $a_item_id .
", of original LM: " . $item_lm_id);
997 if ($item_lm_id != $a_target_lm->getId() && !$a_as_copy) {
1001 include_once(
"Services/MetaData/classes/class.ilMD.php");
1002 $md =
new ilMD($item_lm_id, $item->getId(), $item->getType());
1003 $new_md = $md->
cloneMD($a_target_lm->getId(), $item->getId(), $item->getType());
1006 $item->setLMId($a_target_lm->getId());
1007 $item->setContentObject($a_target_lm);
1013 if ($item_type ==
"pg") {
1014 $page = $item->getPageObject();
1016 $page->setParentId($a_target_lm->getId());
1022 $target_item = $item->copy($a_target_lm);
1023 $a_copied_nodes[$item->getId()] = $target_item->getId();
1025 $target_item = $item;
1028 $ilLog->write(
"Putting into tree type " . $target_item->getType() .
1029 "Item ID: " . $target_item->getId() .
", Parent: " . $a_parent_id .
", " .
1030 "Target: " . $a_target .
", Item LM:" . $target_item->getContentObject()->getId());
1034 if ($a_source_lm == null) {
1035 $childs =
$ilUser->getClipboardChilds($item->getId(), $a_insert_time);
1037 $childs = $a_source_lm->lm_tree->getChilds($item->getId());
1038 foreach ($childs as $k => $child) {
1039 $childs[$k][
"id"] = $childs[$k][
"child"];
1043 foreach ($childs as $child) {
1047 $target_item->getId(),
1056 return $target_item->getId();
1065 public static function saveTitles($a_lm, $a_titles, $a_lang =
"-")
1067 include_once(
"./Modules/LearningModule/classes/class.ilLMObjTranslation.php");
1069 if ($a_lang ==
"") {
1072 if (is_array($a_titles)) {
1073 include_once(
"./Services/Form/classes/class.ilFormPropertyGUI.php");
1074 include_once(
"./Services/MetaData/classes/class.ilMD.php");
1078 if ($a_lang ==
"-") {
1080 if (is_object($lmobj)) {
1082 $md =
new ilMD($a_lm->getId(),
$id, $lmobj->getType());
1084 if (is_object($md_gen)) {
1085 $md_gen->setTitle(
$title);
1093 $lmobjtrans->setTitle(
$title);
1094 $lmobjtrans->save();
1105 $all_fixes =
array();
1106 foreach ($a_copied_nodes as $original_id => $copied_id) {
1110 if ($copied_type ==
"pg") {
1116 include_once(
"./Modules/LearningModule/classes/class.ilLMPage.php");
1117 $tpg =
new ilLMPage($copied_id, 0, $l);
1119 $il = $tpg->getInternalLinks();
1121 foreach ($il as $l) {
1127 foreach ($targets as
$target) {
1128 if (($target[
"inst"] == 0 || $target[
"inst"] = IL_INST_ID) &&
1129 ($target[
"type"] ==
"pg" || $target[
"type"] ==
"st")) {
1131 if ($a_copied_nodes[$target[
"id"]] > 0) {
1132 $fix[$target[
"id"]] = $a_copied_nodes[$target[
"id"]];
1138 if ($trg_lm != $copy_lm) {
1142 foreach ($lm_data as $item) {
1143 if (!$found && ($item[
"lm_id"] == $copy_lm)) {
1144 $fix[$target[
"id"]] = $item[
"obj_id"];
1154 if (count($fix) > 0) {
1158 if (is_array($all_fixes[
$t .
":" . $copied_id])) {
1159 $all_fixes[
$t .
":" . $copied_id] += $fix;
1161 $all_fixes[
$t .
":" . $copied_id] = $fix;
1167 if ($copied_type ==
"pg" ||
1168 $copied_type ==
"st") {
1180 if ($original_lm != $copy_lm) {
1194 "_" . $original_id);
1197 include_once(
"./Services/MediaObjects/classes/class.ilObjMediaObject.php");
1198 foreach (
$mobs as $mob) {
1207 foreach ($usages as $usage) {
1208 if ($usage[
"type"] ==
"lm:pg" | $usage[
"type"] ==
"lm:st") {
1209 $sources[] = $usage;
1214 foreach ($sources as
$source) {
1215 $stype = explode(
":", $source[
"type"]);
1216 $source_type = $stype[1];
1218 if ($source_type ==
"pg" || $source_type ==
"st") {
1222 if ($src_lm == $original_lm) {
1226 "il__" . $source_type .
"_" . $source[
"id"],
1230 foreach ($lm_data as $item) {
1232 $fix[$item[
"obj_id"]][$original_id] = $copied_id;
1240 if (count($fix) > 0) {
1241 foreach ($fix as $page_id => $fix_array) {
1243 if (is_array($all_fixes[
$t .
":" . $page_id])) {
1244 $all_fixes[
$t .
":" . $page_id] += $fix_array;
1246 $all_fixes[
$t .
":" . $page_id] = $fix_array;
1254 foreach ($all_fixes as $pg => $fixes) {
1255 $pg = explode(
":", $pg);
1256 include_once(
"./Services/COPage/classes/class.ilPageObjectFactory.php");
1259 if ($page->moveIntLinks($fixes)) {
1260 $page->update(
true,
true);
1272 if (is_array($a_items)) {
1273 foreach ($a_items as $item) {
1279 if (count($types) > 1) {
1291 public static function writeLayout($a_obj_id, $a_layout, $a_lm = null)
1295 $ilDB = $DIC->database();
1300 $query =
"UPDATE lm_data SET " .
1301 " layout = " .
$ilDB->quote($a_layout,
"text") .
1302 " WHERE obj_id = " .
$ilDB->quote($a_obj_id,
"integer");
1304 } elseif (
$t ==
"st" && is_object($a_lm)) {
1305 $node = $a_lm->getLMTree()->getNodeData($a_obj_id);
1306 $child_nodes = $a_lm->getLMTree()->getSubTree($node);
1307 if (is_array($child_nodes) && count($child_nodes) > 0) {
1308 foreach ($child_nodes as $c) {
1309 if ($c[
"type"] ==
"pg") {
1310 $query =
"UPDATE lm_data SET " .
1311 " layout = " .
$ilDB->quote($a_layout,
"text") .
1312 " WHERE obj_id = " .
$ilDB->quote($c[
"child"],
"integer");
1329 $ilDB = $DIC->database();
1331 $query =
"SELECT layout FROM lm_data WHERE obj_id = " .
1332 $ilDB->quote($a_obj_id,
"integer");
1334 $obj_rec =
$ilDB->fetchAssoc($obj_set);
1336 return $obj_rec[
"layout"];
1348 $lm_tree =
new ilTree($a_lm_id);
1349 $lm_tree->setTableNames(
'lm_tree',
'lm_data');
1350 $lm_tree->setTreeTablePK(
"lm_id");
1351 $lm_tree->readRootId();
1353 $childs = $lm_tree->getChildsByType($a_chap_id,
"pg");
1368 $ilDB = $DIC->database();
1374 $set =
$ilDB->query(
"SELECT obj_id FROM lm_data " .
1375 " WHERE lm_id = " .
$ilDB->quote($a_lm_id,
"integer") . $and);
1377 while ($rec =
$ilDB->fetchAssoc($set)) {
1378 $obj_ids[] = $rec[
"obj_id"];
1399 $ilDB = $DIC->database();
1401 include_once(
"Services/MetaData/classes/class.ilMDIdentifier.php");
1403 if (trim($a_exp_id) ==
"") {
1411 foreach ($entries as
$id => $e) {
1412 if ($e[
"catalog"] ==
"ILIAS_NID") {
1414 $identifier->setMetaId(
$id);
1415 $identifier->delete();
1427 foreach ($entries as
$id => $e) {
1428 if ($e[
"catalog"] ==
"ILIAS_NID") {
1430 $identifier->setMetaId(
$id);
1431 $identifier->read();
1432 $identifier->setEntry($a_exp_id);
1433 $identifier->update();
1440 include_once(
"./Services/MetaData/classes/class.ilMD.php");
1442 $md_gen = $md->getGeneral();
1443 $identifier = $md_gen->addIdentifier();
1444 $identifier->setEntry($a_exp_id);
1445 $identifier->setCatalog(
"ILIAS_NID");
1446 $identifier->save();
1460 include_once(
"./Services/MetaData/classes/class.ilMDIdentifier.php");
1467 foreach ($entries as $e) {
1468 if ($e[
"catalog"] ==
"ILIAS_NID") {
1482 include_once(
"./Services/MetaData/classes/class.ilMDIdentifier.php");
1491 include_once(
"./Services/MetaData/classes/class.ilMDIdentifier.php");
1494 foreach ($entries as $e) {
1495 if ($e[
"catalog"] ==
"ILIAS_NID") {
1497 $res[trim($e[
"entry"])]++;
1512 include_once(
"./Services/MetaData/classes/class.ilMDIdentifier.php");
1526 $a_include_numbers =
false,
1527 $a_time_scheduled_activation =
false,
1528 $a_force_content =
false,
1532 if ($a_lang ==
"") {
1536 if ($a_node[
"type"] ==
"st") {
1537 include_once
'./Modules/LearningModule/classes/class.ilStructureObject.php';
1542 $a_time_scheduled_activation,
1548 include_once
'./Modules/LearningModule/classes/class.ilLMPageObject.php';
1553 $a_time_scheduled_activation,
1571 $db = $DIC->database();
1573 $title_data =
array();
1574 if ($a_lang ==
"-") {
1575 $set =
$db->query(
"SELECT t.child, d.obj_id, d.title, d.short_title FROM lm_data d LEFT JOIN lm_tree t ON (d.obj_id = t.child) WHERE d.lm_id = " .
1576 $db->quote($a_lm_id,
"integer") .
" ORDER BY t.lft, d.title");
1578 $set =
$db->query(
"SELECT t.child, d.obj_id, tr.title, tr.short_title, d.title default_title, d.short_title default_short_title FROM lm_data d " .
1579 " LEFT JOIN lm_tree t ON (d.obj_id = t.child) " .
1580 " LEFT JOIN lm_data_transl tr ON (tr.id = d.obj_id AND tr.lang=" .
$db->quote($a_lang,
"text") .
") WHERE d.lm_id = " .
1581 $db->quote($a_lm_id,
"integer") .
" ORDER BY t.lft, d.title");
1583 while ($rec =
$db->fetchAssoc($set)) {
1584 $title_data[] = $rec;
1599 $db = $DIC->database();
1601 if ($a_lang !=
"-" && $a_lang !=
"") {
1603 $trans->setShortTitle($a_short_title);
1607 "UPDATE lm_data SET " .
1608 " short_title = " .
$db->quote($a_short_title,
"text") .
1609 " WHERE obj_id = " .
$db->quote($a_id,
"integer")
& cloneMD($a_rbac_id, $a_obj_id, $a_obj_type)
getShortTitle()
get short title of lm object
setLayout($a_val)
Set layout.
MDUpdateListener($a_element)
Meta data update listener.
static updateInternalLinks($a_copied_nodes, $a_parent_type="lm")
Update internal links, after multiple pages have been copied.
static _lookup($a_obj_id, $a_field)
Lookup title.
static saveExportId($a_lm_id, $a_lmobj_id, $a_exp_id, $a_type="pg")
Save export id.
static _lookupType($a_obj_id, $a_lm_id=0)
Lookup type.
static _hasUntrashedReference($a_obj_id)
checks wether an object has at least one reference that is not in trash
existsExportID($a_lm_id, $a_exp_id, $a_type="pg")
Does export ID exist in lm?
static getShortTitles($a_lm_id, $a_lang="-")
Get short titles.
static uniqueTypesCheck($a_items)
Check for unique types (all pages or all chapters)
static _exists($a_id)
checks wether a lm content object with specified id exists or not
static _extractInstOfTarget($a_target)
Extract installation id out of target.
static _lookupShortTitle($a_obj_id)
Lookup short title.
static _getIdForImportId($a_import_id)
get current object id for import id (static)
static saveTitles($a_lm, $a_titles, $a_lang="-")
Save titles for lm objects.
static _extractTypeOfTarget($a_target)
Extract type out of target.
setTitle($a_title)
set title of lm object
static _writeTitle($a_obj_id, $a_title)
static _extractObjIdOfTarget($a_target)
Extract object id out of target.
static _writePublicAccessStatus($a_pages, $a_cont_obj_id)
update public access flags in lm_data for all pages of a content object
static _getAllLMObjectsOfLM($a_lm_id, $a_type="")
Get all objects of learning module.
getExportIDInfo($a_lm_id, $a_exp_id, $a_type="pg")
Does export ID exist in lm?
static writeLayout($a_obj_id, $a_layout, $a_lm=null)
Write layout setting.
const LP_MODE_COLLECTION_TLT
static _lookupContObjID($a_id)
get learning module / digibook id for lm object
update()
update complete object
static _refreshStatus($a_obj_id, $a_users=null)
Set dirty.
static _lookupTitle($a_obj_id)
Lookup title.
static existsIdInRbacObject($a_rbac_id, $a_obj_type, $a_catalog, $a_entry)
Does id entry exist in rbac object?
static isHelpLM($a_lm_id)
Check if LM is a help LM.
__construct($a_content_obj, $a_id=0)
static _createEntry( $a_obj_id, $a_action, $a_info_params="", $a_obj_type="", $a_user_comment="", $a_update_last=false)
Creates a new history entry for an object.
static _getAllObjectsForImportId($a_import_id, $a_in_lm=0)
Get all items for an import ID.
static _getPresentationTitle( $a_st_id, $a_mode=IL_CHAPTER_TITLE, $a_include_numbers=false, $a_time_scheduled_activation=false, $a_force_content=false, $a_lm_id=0, $a_lang="-", $a_include_short=false)
get presentation title
static _getAllReferences($a_id)
get all reference ids of object
static getTree($a_cont_obj_id)
Get learningmodule tree.
static _getPresentationTitle( $a_node, $a_mode=IL_PAGE_TITLE, $a_include_numbers=false, $a_time_scheduled_activation=false, $a_force_content=false, $a_lm_id=0, $a_lang="-")
Get affective title.
catch(Exception $e) $message
static getDuplicateExportIDs($a_lm_id, $a_type="pg")
Get duplicate export IDs (count export ID usages)
foreach($_POST as $key=> $value) $res
static clipboardCopy($a_cont_obj_id, $a_ids)
Copy a set of chapters/pages into the clipboard.
static _deleteAllObjectData(&$a_cobj)
delete all objects of content object (digi book / learning module)
date( 'd-M-Y', $objPHPExcel->getProperties() ->getCreated())
static putInTree($a_obj, $a_parent_id="", $a_target_node_id="")
put this object into content object tree
static preloadDataByLM($a_lm_id)
Preload data records by lm.
static clipboardCut($a_cont_obj_id, $a_ids)
Copy a set of chapters/pages into the clipboard.
static getInstance(&$a_content_obj, $a_id=0, $a_halt=true)
static _getEntriesForObj($a_rbac_id, $a_obj_id, $a_obj_type)
Get IDs for an object.
setDescription($a_description)
static _getSourcesOfTarget($a_target_type, $a_target_id, $a_target_inst)
get all sources of a link target
setTableNames($a_table_tree, $a_table_obj_data, $a_table_obj_reference="")
set table names The primary key of the table containing your object_data must be 'obj_id' You may use...
updateMetaData()
update meta data entry
static getExportId($a_lm_id, $a_lmobj_id, $a_type="pg")
Get export ID.
static _getMobsForTarget($a_type, $a_target)
Get areas for a certain target.
static lookupLayout($a_obj_id)
Lookup type.
static _writeImportId($a_id, $a_import_id)
write import id to db (static)
static getInstanceByObjId($a_obj_id, $stop_on_error=true)
get an instance of an Ilias object by object id
Tree class data representation in hierachical trees using the Nested Set Model with Gaps by Joe Celco...
Create styles array
The data for the language used.
static _lookupType($a_id, $a_reference=false)
lookup object type
setDataRecord($a_record)
this method should only be called by class ilLMObjectFactory
static getPagesOfChapter($a_lm_id, $a_chap_id)
Get pages of chapter.
setShortTitle($a_title)
set short title of lm object
setContentObject(&$a_content_obj)
static getInstance($a_parent_type, $a_id=0, $a_old_nr=0, $a_lang="-")
Get page object instance.
getTitle()
get title of lm object
static _getPresentationTitle( $a_pg_id, $a_mode=IL_CHAPTER_TITLE, $a_include_numbers=false, $a_time_scheduled_activation=false, $a_force_content=false, $a_lm_id=0, $a_lang="-", $a_include_short=false)
presentation title doesn't have to be page title, it may be chapter title + page title or chapter tit...
createMetaData()
create meta data entry
static writeShortTitle($a_id, $a_short_title, $a_lang="-")
Write short title.
static lookupTranslations($a_parent_type, $a_id)
Lookup translations.
static readIdData($a_rbac_id, $a_obj_type, $a_catalog, $a_entry)
Does id entry exist in rbac object?
deleteMetaData()
delete meta data entry
Add data(end) time
Method that wraps PHPs time in order to allow simulations with the workflow.
static pasteTree( $a_target_lm, $a_item_id, $a_parent_id, $a_target, $a_insert_time, &$a_copied_nodes, $a_as_copy=false, $a_source_lm=null)
Paste item (tree) from clipboard to current lm.
static _getEntriesForRbacObj($a_rbac_id, $a_obj_type="")
Get IDs for an rbac object.
static _isPagePublic($a_node_id, $a_check_public_mode=false)
static getObjectList($lm_id, $type="")
static
static yn2tf($a_yn)
convert "y"/"n" to true/false
Translation information on lm object.
static getInstance($a_obj_id)
static _lookupNID($a_lm_id, $a_lm_obj_id, $a_type)
lookup named identifier (ILIAS_NID)
Extension of ilPageObject for learning modules.