82 public function __construct(
int $a_id = 0,
bool $a_reference =
true)
87 $this->db =
$DIC->database();
88 $this->log =
$DIC[
"ilLog"];
89 $this->
access = $DIC->access();
90 $this->
error = $DIC[
"ilErr"];
91 $this->rbacsystem =
$DIC->rbac()->system();
92 $this->tree =
$DIC->repositoryTree();
93 $this->
user = $DIC->user();
94 $this->obj_definition =
$DIC[
"objDefinition"];
95 $this->news =
$DIC->news();
98 $this->setting =
$DIC[
"ilSetting"];
101 if ($this->
getId() > 0) {
105 $this->content_style_domain =
$DIC->contentStyle()->domain();
115 self::TILE_SMALL =>
$lng->
txt(
"cont_tile_size_1"),
116 self::TILE_NORMAL =>
$lng->
txt(
"cont_tile_size_0"),
117 self::TILE_LARGE =>
$lng->
txt(
"cont_tile_size_2"),
118 self::TILE_EXTRA_LARGE =>
$lng->
txt(
"cont_tile_size_3"),
119 self::TILE_FULL =>
$lng->
txt(
"cont_tile_size_4")
137 $cont_dir = $webspace_dir .
"/container_data";
138 if (!is_dir($cont_dir)) {
141 $obj_dir = $cont_dir .
"/obj_" . $this->
getId();
142 if (!is_dir($obj_dir)) {
160 $this->hiddenfilesfound = $a_hiddenfilesfound;
175 $this->style_id = $a_style_id;
180 $this->news_timeline = $a_val;
190 $this->news_timeline_auto_entries = $a_val;
200 $this->news_timeline_landing_page = $a_val;
210 if (!$this->news->isGloballyActivated()) {
230 $this->news_block_activated = $a_val;
240 $this->use_news = $a_val;
251 string $a_default_value =
null
257 $q =
"SELECT value FROM container_settings WHERE " .
258 " id = " .
$ilDB->quote($a_id,
'integer') .
" AND " .
259 " keyword = " .
$ilDB->quote($a_keyword,
'text');
260 $set =
$ilDB->query($q);
263 if (isset($rec[
'value'])) {
264 return $rec[
"value"];
267 return $a_default_value ??
'';
278 $q =
"SELECT value FROM container_settings WHERE " .
279 " id = " .
$ilDB->quote($a_id,
'integer') .
" AND " .
280 " keyword = " .
$ilDB->quote($a_keyword,
'text');
281 $set =
$ilDB->query($q);
296 $query =
"DELETE FROM container_settings WHERE " .
297 "id = " .
$ilDB->quote($a_id,
'integer') .
" " .
298 "AND keyword = " .
$ilDB->quote($a_keyword,
'text');
302 $log->debug(
"Write container setting, id: " . $a_id .
", keyword: " . $a_keyword .
", value: " . $a_value);
304 $query =
"INSERT INTO container_settings (id, keyword, value) VALUES (" .
305 $ilDB->quote($a_id,
'integer') .
", " .
306 $ilDB->quote($a_keyword,
'text') .
", " .
307 $ilDB->quote($a_value,
'text') .
325 $sql =
"SELECT keyword, value FROM container_settings WHERE " .
326 " id = " .
$ilDB->quote($a_id,
'integer');
327 $set =
$ilDB->query($sql);
328 while ($row =
$ilDB->fetchAssoc($set)) {
329 $res[$row[
"keyword"]] = $row[
"value"];
337 string $a_keyword =
"",
338 bool $a_keyword_like =
false
348 $sql =
"DELETE FROM container_settings WHERE " .
349 " id = " .
$ilDB->quote($a_id,
'integer');
350 if ($a_keyword !==
"") {
351 if (!$a_keyword_like) {
352 $sql .=
" AND keyword = " .
$ilDB->quote($a_keyword,
"text");
354 $sql .=
" AND " .
$ilDB->like(
"keyword",
"text", $a_keyword);
357 $ilDB->manipulate($sql);
365 $settings = self::_getContainerSettings($a_obj_id);
369 foreach (
$settings as $keyword => $value) {
371 if (stripos($keyword,
"icon") !==
false) {
382 $a_xml->
xmlData((
string) $value);
398 public function cloneObject(
int $target_id,
int $copy_id = 0,
bool $omit_tree =
false): ?
ilObject
401 $new_obj = parent::cloneObject(
$target_id, $copy_id, $omit_tree);
407 $ot->setDefaultTitle($new_obj->getTitle());
408 $ot->copy($new_obj->getId());
411 $new_obj->setObjectTranslation($ot2);
412 if ($ot2->getDefaultDescription() !==
"") {
413 $new_obj->setDescription($ot2->getDefaultDescription());
415 $log->debug(
"**1**" . count($new_obj->getObjectTranslation()->getLanguages()));
416 $log->debug(
"ilContainer: cloning translations from " . $this->
getId() .
" to " .
419 #18624 - copy all sorting settings
428 $orig_page->copy($new_obj->getId(),
"cont", $new_obj->getId());
432 $this->content_style_domain->styleForRefId($this->getRefId())->cloneTo($new_obj->getId());
440 $orig_page->copy($new_obj->getId(),
"cstr", $new_obj->getId());
444 foreach (self::_getContainerSettings($this->
getId()) as $keyword => $value) {
445 self::_writeContainerSetting($new_obj->getId(), (
string) $keyword, (
string) $value);
448 $new_obj->setNewsTimeline($this->getNewsTimeline());
449 $new_obj->setNewsBlockActivated($this->getNewsBlockActivated());
450 $new_obj->setUseNews($this->getUseNews());
451 $new_obj->setNewsTimelineAutoEntries($this->getNewsTimelineAutoEntries());
452 $new_obj->setNewsTimelineLandingPage($this->getNewsTimelineLandingPage());
455 $mom_noti->cloneSettings($new_obj->getRefId());
472 parent::cloneDependencies(
$target_id, $copy_id);
477 self::fixInternalLinksAfterCopy(
$target_id, $copy_id, $this->getRefId());
483 $collection = $olp->getCollectionInstance();
485 $collection->cloneCollection(
$target_id, $copy_id);
509 bool $soap_call =
false,
518 $wizard_options->saveOwner(
$ilUser->getId());
519 $wizard_options->saveRoot($clone_source);
522 $wizard_options->initContainer($clone_source,
$ref_id);
524 foreach ($options as $source_id => $option) {
525 $wizard_options->addEntry($source_id, $option);
527 $wizard_options->read();
528 $wizard_options->storeTree($clone_source);
533 $wizard_options->read();
534 $wizard_options->dropFirstNode();
535 $wizard_options->appendMapping($clone_source,
$ref_id);
544 $soap_client->setResponseTimeout($soap_client->getResponseTimeout());
545 $soap_client->enableWSDL(
true);
547 $ilLog->write(__METHOD__ .
': Trying to call Soap client...');
548 if ($soap_client->init()) {
550 $res = $soap_client->call(
'ilClone', [$new_session_id .
'::' .
$client_id, $copy_id]);
553 $wizard_options->disableSOAP();
554 $wizard_options->read();
558 'copy_id' => $copy_id,
568 public function delete():
bool
571 if (!parent::delete()) {
575 $this->obj_trans->delete();
582 return self::VIEW_BY_TYPE;
587 return $this->order_type ?: self::SORT_TITLE;
592 $this->order_type = $a_value;
600 $id = get_class($class_provider);
601 $current = $repo->getValueForProvider(
$id);
615 if ($this->isClassificationFilterActive() && in_array($this->getType(), [
"grp",
"crs"])) {
624 if ($this->filteredSubtree()) {
625 $objects = $tree->getSubTree($tree->getNodeData($this->getRefId()));
627 $objects = $tree->getChilds($this->getRefId(),
"title");
633 bool $a_admin_panel_enabled =
false,
634 bool $a_include_side_block =
false,
635 int $a_get_single = 0,
638 $objDefinition = $this->obj_definition;
642 isset($this->items[(
int) $a_admin_panel_enabled][(
int) $a_include_side_block]) &&
643 is_array($this->items[(
int) $a_admin_panel_enabled][(
int) $a_include_side_block]) &&
646 return $this->items[(
int) $a_admin_panel_enabled][(
int) $a_include_side_block];
649 $objects = $this->getInitialSubitems();
650 $objects = $this->applyContainerUserFilter($objects, $container_user_filter);
651 $objects = self::getCompleteDescriptions($objects);
656 $id = get_class($class_provider);
657 $current = $repo->getValueForProvider(
$id);
659 $class_provider->setSelection($current);
660 $filtered = $class_provider->getFilteredObjects();
661 $objects = array_filter($objects,
static function (array
$i) use ($filtered):
bool {
662 return (is_array($filtered) && in_array(
$i[
"obj_id"], $filtered));
677 if (!self::$data_preloaded) {
686 $classification_filter_active = $this->isClassificationFilterActive();
687 foreach ($objects as
$key => $object) {
689 if (!self::$data_preloaded) {
690 if ($object[
"type"] ===
"sess") {
692 foreach ($ev_items as $ev_item) {
693 $preloader->addItem((
int) $ev_item[
"obj_id"], $ev_item[
"type"], $ev_item[
"ref_id"]);
697 if ($a_get_single > 0 && $object[
"child"] != $a_get_single) {
702 if ($object[
"type"] ===
"adm" || $object[
"type"] ===
"rolf" || $objDefinition->getDevMode($object[
"type"])) {
707 if ($objDefinition->isInactivePlugin($object[
"type"])) {
713 [
'file',
'fold',
'cat'],
716 $this->setHiddenFilesFound(
true);
717 if (!$a_admin_panel_enabled) {
723 if (!self::$data_preloaded) {
724 $preloader->addItem((
int) $object[
"obj_id"], $object[
"type"], $object[
"child"]);
728 if (!$a_include_side_block && $objDefinition->isSideBlock($object[
'type'])) {
732 $all_ref_ids[] = (
int) $object[
"child"];
736 if (!self::$data_preloaded) {
737 $preloader->preload();
740 self::$data_preloaded =
true;
743 foreach ($objects as
$key => $object) {
745 if (!in_array($object[
"child"], $all_ref_ids)) {
750 $type = $objDefinition->getGroupOfObj($object[
"type"]);
752 $type = $object[
"type"];
756 $this->addAdditionalSubItemInformation($object);
760 $this->items[
"_all"][
$key] = $object;
761 if ($object[
"type"] !==
"sess") {
762 $this->items[
"_non_sess"][
$key] = $object;
765 $this->items[(
int) $a_admin_panel_enabled][(
int) $a_include_side_block]
766 = $sort->sortItems($this->items);
768 return $this->items[(
int) $a_admin_panel_enabled][(
int) $a_include_side_block];
774 if (isset($this->items[
"_all"]) && is_array($this->items[
"_all"]) && count($this->items[
"_all"]) > 0) {
791 $objDefinition = $this->obj_definition;
793 if (empty($this->type_grps)) {
794 $this->type_grps = $objDefinition::getGroupedRepositoryObjectTypes($this->getType());
796 return $this->type_grps;
804 if (
$ilSetting->get(
"enable_cat_page_edit")) {
816 $ret = parent::create();
822 $this->addTranslation(
824 $this->getDescription(),
825 $lng->getDefaultLanguage(),
829 if (($this->getStyleSheetId()) > 0) {
834 $log->debug(
"Create Container, id: " . $this->
getId());
836 self::_writeContainerSetting($this->
getId(),
"news_timeline", (
string) ((
int) $this->getNewsTimeline()));
837 self::_writeContainerSetting($this->
getId(),
"news_timeline_incl_auto", (
string) ((
int) $this->getNewsTimelineAutoEntries()));
838 self::_writeContainerSetting($this->
getId(),
"news_timeline_landing_page", (
string) ((
int) $this->getNewsTimelineLandingPage()));
847 parent::putInTree($parent_ref_id);
850 if (self::_lookupContainerSetting(
ilObject::_lookupObjId($parent_ref_id),
"hide_header_icon_and_title")) {
851 self::_writeContainerSetting($this->
getId(),
"hide_header_icon_and_title",
'1');
854 self::_writeContainerSetting($this->
getId(),
"hide_top_actions",
'1');
860 $ret = parent::update();
863 $log->debug(
"**5**" . count($this->getObjectTranslation()->getLanguages()));
865 $trans = $this->getObjectTranslation();
866 $trans->setDefaultTitle($this->getTitle());
867 $trans->setDefaultDescription($this->getLongDescription());
871 $log->debug(
":::::::::::::::::::::::::::");
877 $log->debug(
"Update Container, id: " . $this->
getId());
879 self::_writeContainerSetting($this->
getId(),
"news_timeline", (
string) ((
int) $this->getNewsTimeline()));
880 self::_writeContainerSetting($this->
getId(),
"news_timeline_incl_auto", (
string) (
int) $this->getNewsTimelineAutoEntries());
881 self::_writeContainerSetting($this->
getId(),
"news_timeline_landing_page", (
string) ((
int) ($this->getNewsTimelineLandingPage())));
896 $this->readContainerSettings();
902 $this->setNewsTimeline((
bool) self::_lookupContainerSetting($this->
getId(),
"news_timeline"));
903 $this->setNewsTimelineAutoEntries((
bool) self::_lookupContainerSetting($this->
getId(),
"news_timeline_incl_auto"));
904 $this->setNewsTimelineLandingPage((
bool) self::_lookupContainerSetting($this->
getId(),
"news_timeline_landing_page"));
905 $this->setNewsBlockActivated((
bool) self::_lookupContainerSetting(
908 $this->setting->get(
'block_activated_news',
'1')
911 $this->news->isGloballyActivated());
924 $ilObjDataCache =
$DIC[
"ilObjDataCache"];
927 $short_desc =
$ilSetting->get(
"rep_shorten_description");
928 $short_desc_max_length =
$ilSetting->get(
"rep_shorten_description_length");
929 if (!$short_desc || $short_desc_max_length > 0) {
932 foreach ($objects as
$key => $object) {
934 $object[
"description"],
935 (
int) $short_desc_max_length,
943 foreach ($objects as
$key => $object) {
944 $obj_ids[] = $object[
"obj_id"];
946 if (count($obj_ids)) {
948 foreach ($objects as
$key => $object) {
950 if ($ilObjDataCache->isTranslatedDescription((
int) $object[
"obj_id"])) {
951 $long_desc[$object[
"obj_id"]] = $object[
"description"];
953 if ($short_desc && $short_desc_max_length) {
955 $long_desc[$object[
"obj_id"]] ??
'',
956 (
int) $short_desc_max_length,
960 $objects[
$key][
"description"] = $long_desc[$object[
"obj_id"]] ??
'';
968 protected static function fixInternalLinksAfterCopy(
976 $obj_definition =
$DIC[
"objDefinition"];
980 $mapping = $cwo->getMappings();
984 $pg->handleRepositoryLinksOnCopy($mapping, $a_source_ref_id);
985 $pg->update(
true,
true);
988 foreach ($mapping as $old_ref_id => $new_ref_id) {
989 if (!is_numeric($old_ref_id) || !is_numeric($new_ref_id)) {
996 $file = $loc .
'/class.' . $class .
'.php';
998 if (is_file($file)) {
1000 $coll =
new $class();
1005 $page->handleRepositoryLinksOnCopy($mapping, $a_source_ref_id);
1006 $page->update(
true,
true);
1016 $this->obj_trans->delete();
1021 $this->obj_trans->removeLanguage($a_lang);
1022 $this->obj_trans->save();
1029 string $a_lang_default
1031 if (empty($a_title)) {
1032 $a_title =
"NO TITLE";
1035 $this->obj_trans->addLanguage($a_lang, $a_title, $a_desc, (
bool) $a_lang_default,
true);
1036 $this->obj_trans->save();
1051 $db =
$DIC->database();
1053 if (is_null($container_user_filter)) {
1057 if ($container_user_filter->isEmpty() && !self::_lookupContainerSetting($this->getId(),
"filter_show_empty",
'0')) {
1063 $obj_ids = array_map(
static function (array
$i):
int {
1064 return (
int)
$i[
"obj_id"];
1066 $filter_data = $container_user_filter->getData();
1067 if (is_array($filter_data)) {
1068 foreach ($filter_data as
$key => $val) {
1069 if (count($obj_ids) === 0) {
1072 if (!in_array(substr(
$key, 0, 4), [
"adv_",
"std_"],
true)) {
1078 $field_id = substr(
$key, 4);
1081 if (strpos(
$key,
"std_") === 0) {
1086 "SELECT obj_id FROM object_data " .
1087 " WHERE " . $db->in(
"obj_id", $obj_ids,
false,
"integer") .
1092 $result_obj_ids = [];
1093 while ($rec = $db->fetchAssoc($set)) {
1094 $result_obj_ids[] = $rec[
"obj_id"];
1096 $obj_ids = array_intersect($obj_ids, $result_obj_ids);
1098 if (in_array($val, [1, 2])) {
1099 $online_where = ($val == 1)
1100 ?
" (offline <> " . $db->quote(1,
"integer") .
" OR offline IS NULL) "
1101 :
" offline = " . $db->quote(1,
"integer") .
" ";
1104 "SELECT obj_id FROM object_data " .
1105 " WHERE " . $db->in(
"obj_id", $obj_ids,
false,
"integer") .
1106 " AND " . $online_where,
1110 $result_obj_ids = [];
1111 while ($rec = $db->fetchAssoc($set)) {
1112 $result_obj_ids[] = $rec[
"obj_id"];
1114 $obj_ids = array_intersect($obj_ids, $result_obj_ids);
1115 $obj_ids = $this->legacyOnlineFilter($obj_ids, $objects, (
int) $val);
1120 "SELECT DISTINCT(obj_id) FROM obj_members m JOIN usr_data u ON (u.usr_id = m.usr_id) " .
1121 " WHERE " . $db->in(
"m.obj_id", $obj_ids,
false,
"integer") .
1122 " AND " . $db->like(
"u.lastname",
"text", $val) .
1123 " AND m.contact = %s",
1127 $result_obj_ids = [];
1128 while ($rec = $db->fetchAssoc($set)) {
1129 $result_obj_ids[] = $rec[
"obj_id"];
1131 $obj_ids = array_intersect($obj_ids, $result_obj_ids);
1133 $obj_ids = $this->filterObjIdsByCopyright($obj_ids, $val);
1135 #$query_parser->setCombination($this->options['title_ao']);
1137 $query_parser->parse();
1141 switch ($field_id) {
1143 $meta_search->setMode(
'title_description');
1146 $meta_search->setMode(
'description');
1149 $meta_search->setMode(
'title');
1152 $meta_search->setMode(
'keyword_all');
1155 $meta_search->setMode(
'contribute');
1160 $result = $meta_search->performSearch();
1166 $field->getADTDefinition(),
1170 $field_form->setElementId(
"query[" .
$key .
"]");
1171 $field_form->validate();
1180 $field_form->getADT()->setSelections([$val]);
1183 $adt = $field_form->getADT();
1185 $field_form->getADT()->setSelections([$val]);
1187 $field_form->getADT()->setSelection($val);
1191 $field_form->getADT()->setNumber((
int) $val);
1197 $adv_md_search->setDefinition($field);
1198 $adv_md_search->setIdFilter([0]);
1199 $adv_md_search->setSearchElement($field_form);
1200 $result = $adv_md_search->performSearch();
1205 $result_obj_ids = array_map(
1206 static function (array
$i):
int {
1207 return (
int)
$i[
"obj_id"];
1209 $result->getEntries()
1211 $obj_ids = array_intersect($obj_ids, $result_obj_ids);
1215 $objects = array_filter($objects,
static function (array $o) use ($obj_ids):
bool {
1216 return in_array($o[
"obj_id"], $obj_ids);
1229 if ($identifier === $default_identifier) {
1230 return $this->filterObjIdsByDefaultCopyright($obj_ids, $default_identifier);
1235 "SELECT DISTINCT(rbac_id) FROM il_meta_rights " .
1236 " WHERE " . $db->in(
"rbac_id", $obj_ids,
false,
"integer") .
1237 " AND description = %s ",
1241 $result_obj_ids = [];
1242 while ($rec = $db->fetchAssoc($set)) {
1243 $result_obj_ids[] = $rec[
"rbac_id"];
1245 return array_intersect($obj_ids, $result_obj_ids);
1250 string $default_identifier
1258 "SELECT DISTINCT(rbac_id) FROM il_meta_rights " .
1259 " WHERE " . $db->in(
"rbac_id", $obj_ids,
false,
"integer") .
1260 " AND NOT description = %s ",
1262 array($default_identifier)
1264 $filtered_out_obj_ids = [];
1265 while ($rec = $db->fetchAssoc($set)) {
1266 $filtered_out_obj_ids[] = $rec[
"rbac_id"];
1268 return array_diff($obj_ids, $filtered_out_obj_ids);
1285 $legacy_types = [
"glo",
"wiki",
"qpl",
"book",
"dcl",
"prtt",
"mcst",
"spl"];
1286 foreach ($legacy_types as
$type) {
1287 $lobjects = array_filter($objects,
static function (array $o) use (
$type):
bool {
1288 return ($o[
"type"] ===
$type);
1290 $lobj_ids = array_map(
static function (array
$i):
int {
1291 return (
int)
$i[
"obj_id"];
1306 foreach ($lobj_ids as $lid) {
1312 foreach ($lobj_ids as $lid) {
1320 foreach ($lobj_ids as $lid) {
1325 foreach ($lobj_ids as $lid) {
1329 foreach ($status as $obj_id => $online) {
1330 if (($val == 1 && !$online) || ($val == 2 && $online)) {
1331 if ((
$key = array_search($obj_id, $obj_ids)) !==
false) {
1332 unset($obj_ids[
$key]);
1334 } elseif (!in_array($obj_id, $obj_ids)) {
1335 $obj_ids[] = $obj_id;
$id
plugin.php for ilComponentBuildPluginInfoObjectiveTest::testAddPlugins
static getInstance(?int $a_field_id, ?int $a_type=null, string $language='')
static cloneSettingsOfBlock(string $block_type, int $block_id, int $new_block_id)
static getValidProviders(int $a_parent_ref_id, int $a_parent_obj_id, string $a_parent_obj_type)
Get all valid providers (for parent container)
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
const STD_FIELD_TUTORIAL_SUPPORT
const STD_FIELD_DESCRIPTION
const STD_FIELD_OBJECT_TYPE
const STD_FIELD_TITLE_DESCRIPTION
const STD_FIELD_COPYRIGHT
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
static _lookupSortMode(int $a_obj_id)
static _cloneSettings(int $a_old_id, int $a_new_id)
static _getInstance(int $a_obj_id)
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
ILIAS Style Content DomainService $content_style_domain
cloneAllObject(string $session_id, string $client_id, string $new_type, int $ref_id, int $clone_source, array $options, bool $soap_call=false, int $a_submode=1)
isClassificationFilterActive()
static _writeContainerSetting(int $a_id, string $a_keyword, string $a_value)
const SORT_DIRECTION_DESC
ilObjectDefinition $obj_definition
ilRecommendedContentManager $recommended_content_manager
applyContainerUserFilter(array $objects, ilContainerUserFilter $container_user_filter=null)
Apply container user filter on objects.
static getCompleteDescriptions(array $objects)
overwrites description fields to long or short description in an assoc array keys needed (obj_id and ...
deleteTranslation(string $a_lang)
getNewsTimelineLandingPage()
static _lookupContainerSetting(int $a_id, string $a_keyword, string $a_default_value=null)
cloneDependencies(int $target_id, int $copy_id)
Clone object dependencies (container sorting)
create()
note: title, description and type should be set when this function is called
setNewsTimelineAutoEntries(bool $a_val)
filterObjIdsByCopyright(array $obj_ids, string $copyright_id)
const SORT_NEW_ITEMS_ORDER_ACTIVATION
createContainerDirectory()
bool $news_timeline_auto_entries
setOrderType(int $a_value)
setStyleSheetId(int $a_style_id)
filterObjIdsByDefaultCopyright(array $obj_ids, string $default_identifier)
addTranslation(string $a_title, string $a_desc, string $a_lang, string $a_lang_default)
setNewsBlockActivated(bool $a_val)
static _getContainerSettings(int $a_id)
filteredSubtree()
Note grp/crs currently allow to filter in their whole subtrees Catetories only their direct childs.
const SORT_NEW_ITEMS_ORDER_TITLE
getSubItems(bool $a_admin_panel_enabled=false, bool $a_include_side_block=false, int $a_get_single=0, ilContainerUserFilter $container_user_filter=null)
legacyOnlineFilter(array $obj_ids, array $objects, int $val)
Legacy online filter.
const SORT_NEW_ITEMS_ORDER_CREATION
setNewsTimelineLandingPage(bool $a_val)
addAdditionalSubItemInformation(array &$object)
Add additional information to sub item, e.g.
putInTree(int $parent_ref_id)
maybe this method should be in tree object!?
setHiddenFilesFound(bool $a_hiddenfilesfound)
static _hasContainerSetting(int $a_id, string $a_keyword)
bool $news_timeline_landing_page
const SORT_NEW_ITEMS_POSITION_BOTTOM
static _getContainerDirectory(int $a_id)
setNewsTimeline(bool $a_val)
const SORT_NEW_ITEMS_POSITION_TOP
getNewsTimelineAutoEntries()
static _deleteContainerSettings(int $a_id, string $a_keyword="", bool $a_keyword_like=false)
static bool $data_preloaded
isNewsTimelineEffective()
isNewsTimelineLandingPageEffective()
setObjectTranslation(?ilObjectTranslation $obj_trans)
static _exportContainerSettings(ilXmlWriter $a_xml, int $a_obj_id)
bool $news_block_activated
ilObjectTranslation $obj_trans
static _allocateCopyId()
Allocate a copy for further entries.
static _getInstance(int $a_copy_id)
static getWebspaceDir(string $mode="filesystem")
get webspace directory
static makeDir(string $a_dir)
creates a new directory and inherits all filesystem permissions of the parent directory You may pass ...
txt(string $a_topic, string $a_default_lang_fallback_mod="")
gets the text for a given topic if the topic is not in the list, the topic itself with "-" will be re...
static getLogger(string $a_component_id)
Get component logger.
static createIdentifier(int $a_entry_id)
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
static _lookupOnlineStatus(array $a_ids)
Check whether booking pool is online (legacy version)
static _lookupOnline(int $a_id)
Check wether datacollection is online.
static _isFileHidden(string $a_file_name)
Returns true, if a file with the specified name, is usually hidden from the user.
static _lookupOnlineStatus(array $a_ids)
static fixContainerItemGroupRefsAfterCloning(ilContainer $a_source_container, int $a_copy_id)
static _lookupOnlineStatus(array $a_ids)
static isOnline($a_obj_id)
returns the objects's ONline status
static _lookupOnline(int $a_obj_id)
static _lookupOnlineStatus(array $a_ids)
see legacyOnlineFilter in ilContainer
static getItemsByEvent(int $event_id)
Get session material / event items.
const SUBMODE_CONTENT_ONLY
parses the objects.xml it handles the xml-description of all ilias objects
getLocation(string $obj_name)
getClassName(string $obj_name)
static getInstance(int $obj_id)
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
static _getAdvancedSearchInstance(ilQueryParser $query_parser)
static _getAdvancedMDSearchInstance(ilQueryParser $query_parser)
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
static getInstance(int $obj_id)
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
static _lookupType(int $id, bool $reference=false)
__construct(int $id=0, bool $reference=true)
static getLongDescriptions(array $obj_ids)
static _lookupObjId(int $ref_id)
static getInstance(string $a_parent_type, int $a_id=0, int $a_old_nr=0, string $a_lang="-")
Get page object instance.
static _exists(string $a_parent_type, int $a_id, string $a_lang="", bool $a_no_cache=false)
Checks whether page exists.
class ilRbacSystem system function like checkAccess, addActiveRole ... Supporting system functions ar...
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
static _duplicate(string $a_session_id)
Duplicate session.
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
static ilClone(string $sid, int $copy_identifier)
static shortenTextExtended(string $a_str, int $a_len, bool $a_dots=false, bool $a_next_blank=false, bool $a_keep_extension=false)
static stripSlashes(string $a_str, bool $a_strip_html=true, string $a_allow="")
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
xmlEndTag(string $tag)
Writes an endtag.
xmlData(string $data, bool $encode=true, bool $escape=true)
Writes data.
xmlStartTag(string $tag, ?array $attrs=null, bool $empty=false, bool $encode=true, bool $escape=true)
Writes a starttag.
if(!file_exists(getcwd() . '/ilias.ini.php'))
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
__construct(Container $dic, ilPlugin $plugin)
@inheritDoc