19declare(strict_types=1);
36 protected \ILIAS\Repository\HTML\HTMLUtil
$html;
37 protected \ILIAS\DI\UIServices
$ui;
80 $this->rbacsystem =
$DIC->rbac()->system();
81 $this->tpl =
$DIC[
"tpl"];
82 $this->
access = $DIC->access();
83 $this->
user = $DIC->user();
84 $this->tree =
$DIC->repositoryTree();
86 $ilCtrl =
$DIC->ctrl();
88 $ilTabs =
$DIC->tabs();
89 $this->metadata =
$DIC->learningObjectMetadata();
91 $this->
ctrl = $ilCtrl;
93 $this->tabs_gui = $ilTabs;
94 $this->gui_object = $a_gui_object;
95 $this->form_action =
"";
96 $this->top_formbuttons = array();
97 $this->hiddenelements = array();
98 $this->
ui = $DIC->ui();
99 $this->request =
$DIC->infoScreen()->internal()->gui()->standardRequest();
100 $this->
html = $DIC->infoScreen()->internal()->gui()->html();
101 $this->data_factory =
new DataFactory();
114 $next_class = $this->
ctrl->getNextClass($this);
116 $cmd = $this->
ctrl->getCmd(
"showSummary");
117 $this->
ctrl->setReturn($this,
"showSummary");
121 switch ($next_class) {
122 case strtolower(ilCommentGUI::class):
123 if ($this->
ctrl->isAsynch()) {
134 case strtolower(PublicProfileGUI::class):
136 $user_profile->setBackUrl($this->
ctrl->getLinkTarget($this,
"showSummary"));
137 $html = $this->
ctrl->forwardCommand($user_profile);
141 case "ilcommonactiondispatchergui":
143 $this->
ctrl->forwardCommand($gui);
154 $this->mbox = $a_val;
165 $this->table_class = $a_val;
175 $this->private_notes_enabled = $a_enable;
180 $this->learning_progress_enabled = $a_enable;
185 $this->availability_enabled = $a_enable;
190 $this->booking_enabled = $a_enable;
196 $this->feedback_enabled = $a_enable;
201 $this->news_enabled = $a_enable;
206 $this->news_editing = $a_enable;
213 public function setBlockProperty(
string $a_block_type,
string $a_property,
string $a_value): void
215 $this->block_property[$a_block_type][$a_property] = $a_value;
235 $this->form_action = $a_form_action;
240 $this->form_action =
"";
250 public function addProperty(
string $a_name,
string $a_value,
string $a_link =
""): void
253 array(
"name" => $a_name,
"value" => $a_value,
263 string $a_input_name,
264 string $a_input_value =
"",
265 string $a_input_size =
"",
266 string $direct_button_command =
"",
267 string $direct_button_label =
"",
268 bool $direct_button_primary =
false
270 $input =
"<span class=\"form-inline\"><input class=\"form-control\" type=\"text\" name=\"$a_input_name\" id=\"$a_input_name\"";
271 if (strlen($a_input_value)) {
274 if (strlen($a_input_size)) {
275 $input .=
" size=\"" . $a_input_size .
"\"";
278 if (strlen($direct_button_command) && strlen($direct_button_label)) {
280 if ($direct_button_primary) {
281 $css =
" btn-primary";
283 $input .=
" <input type=\"submit\" class=\"btn btn-default" . $css .
"\" name=\"cmd[$direct_button_command]\" value=\"$direct_button_label\" />";
287 array(
"name" =>
"<label for=\"$a_input_name\">$a_name</label>",
"value" => $input);
296 string $a_frame =
"",
297 string $a_position =
"top",
298 bool $a_primary =
false
300 if ($a_position ==
"top") {
301 $this->top_buttons[] =
302 array(
"title" => $a_title,
"link" => $a_link,
"target" => $a_frame,
"primary" => $a_primary);
313 string $a_position =
"top"
315 if ($a_position ==
"top") {
316 $this->top_formbuttons[] = array(
"command" => $a_command,
"title" => $a_title);
322 $this->hiddenelements[] = array(
"name" => $a_name,
"value" => $a_value);
329 $lng->loadLanguageModule(
"meta");
330 $lng->loadLanguageModule(
'export');
332 $md_reader = $this->metadata->read($a_rep_obj_id, $a_obj_id, $a_type);
333 $md_paths = $this->metadata->paths();
334 $md_data_helper = $this->metadata->dataHelper();
335 $md_copyright_helper = $this->metadata->copyrightHelper();
338 $lang_data = $md_reader->allData($md_paths->languages());
339 $langs = $md_data_helper->makePresentableAsList(
', ', ...$lang_data);
341 $keyword_data = $md_reader->allData($md_paths->keywords());
342 $keywords = $md_data_helper->makePresentableAsList(
', ', ...$keyword_data);
345 $author_data = $md_reader->allData($md_paths->authors());
346 $author = $md_data_helper->makePresentableAsList(
', ', ...$author_data);
349 $learning_time_data = $md_reader->firstData($md_paths->firstTypicalLearningTime());
350 $learning_time = $md_data_helper->makePresentable($learning_time_data);
354 if ($md_copyright_helper->hasPresetCopyright($md_reader)) {
355 $copyright = $this->
ui->renderer()->render(
356 $md_copyright_helper->readPresetCopyright($md_reader)->presentAsUIComponents()
359 $copyright = $md_copyright_helper->readCustomCopyright($md_reader);
363 $public_access_export = $this->buildPublicAccessExportButton($a_rep_obj_id, $a_obj_id);
368 $this->addSection(
$lng->txt(
"meta_general"));
371 $lng->txt(
"language"),
372 $this->html->escape($langs)
375 if ($keywords !=
"") {
377 $lng->txt(
"keywords"),
378 $this->html->escape($keywords)
384 $this->html->escape($author)
387 if ($learning_time !=
"") {
389 $lng->txt(
"meta_typical_learning_time"),
390 $this->html->escape($learning_time)
395 if ($copyright ===
'' && $public_access_export ===
'') {
398 $this->addSection(
$lng->txt(
'meta_info_licence_section'));
400 if ($public_access_export !==
'') {
402 $lng->txt(
'export_info_public_access'),
403 $public_access_export
407 if ($copyright !==
'') {
409 $lng->txt(
"meta_copyright"),
421 $export_services =
new ExportServices();
422 $public_access = $export_services->publicAccess()->handler();
429 $rep_obj_id !== $this->gui_object->getObject()->getId() ||
430 ($obj_id !== 0 && $obj_id !== $rep_obj_id)
435 if (!$public_access->hasPublicAccessFile($this->data_factory->objId($rep_obj_id))) {
439 $ref_id = $this->gui_object->getObject()->getRefId();
441 return $this->
ui->renderer()->render(
442 $this->
ui->factory()->button()->standard(
443 $this->lng->txt(
'export_info_public_access_download'),
444 $public_access->downloadLinkOfPublicAccessFile($this->data_factory->refId(
$ref_id))
454 public function addObjectSections(): void
457 $ilCtrl = $this->ctrl;
458 $ilUser = $this->user;
459 $ilAccess = $this->access;
463 if ($this->booking_enabled) {
465 $booking_adapter->add();
468 $this->addSection(
$lng->txt(
"additional_info"));
469 $a_obj = $this->gui_object->getObject();
472 if (is_object($a_obj)) {
474 $type = $a_obj->getType();
480 $lng->txt(
"object_id"),
481 (
string) $a_obj->getId()
485 $this->tpl->setPermanentLink($type,
$ref_id);
488 if ($ilAccess->checkAccess(
"write",
"",
$ref_id) ||
489 $ilAccess->checkAccess(
"edit_permissions",
"",
$ref_id)) {
490 $obj_id = $a_obj->getId();
493 foreach ($rs as $r) {
498 if (count($refs) > 1) {
500 foreach ($refs as $r) {
502 $cont_loc->addContextItems($r,
true);
503 $links .= $sep . $cont_loc->getHTML();
508 $lng->txt(
"res_links"),
509 '<div class="small">' . $links .
'</div>'
518 if ($ilAccess->checkAccess(
"write",
"",
$ref_id) ||
519 $ilAccess->checkAccess(
"edit_permissions",
"",
$ref_id)) {
521 $lng->txt(
"create_date"),
534 if (!is_object($ownerObj) || $ownerObj->getType() !=
"usr") {
535 $this->addProperty(
$lng->txt(
"owner"),
$lng->txt(
"no_owner"));
536 } elseif ($ownerObj->hasPublicProfile()) {
537 $ilCtrl->setParameterByClass(PublicProfileGUI::class,
"user_id", $ownerObj->getId());
540 $ownerObj->getPublicName(),
541 $ilCtrl->getLinkTargetByClass([ilPublicProfileBaseClassGUI::class, PublicProfileGUI::class],
"getHTML")
544 $this->addProperty(
$lng->txt(
"owner"), $ownerObj->getPublicName());
553 $count_user_reads = 0;
554 $count_anonymous_reads = 0;
555 foreach ($readEvents as $evt) {
557 $count_anonymous_reads += $evt[
'read_count'];
559 $count_user_reads += $evt[
'read_count'];
567 if ($count_anonymous_reads > 0) {
569 $this->
lng->txt(
"readcount_anonymous_users"),
570 (
string) $count_anonymous_reads
573 if ($count_user_reads > 0) {
574 $this->addProperty($this->
lng->txt(
"readcount_users"), (
string) $count_user_reads);
576 if ($count_users > 0) {
577 $this->addProperty($this->
lng->txt(
"accesscount_registered_users"), (
string) $count_users);
595 $tpl->
setContent($this->getCenterColumnHTML());
609 $ilCtrl = $this->ctrl;
612 $this->setColumnSettings($column_gui);
614 if (!$ilCtrl->isAsynch()) {
619 $this->setColumnSettings($column_gui);
620 $html = $ilCtrl->forwardCommand($column_gui);
625 $this->setColumnSettings($column_gui);
626 $html = $ilCtrl->forwardCommand($column_gui);
629 $html = $this->getHTML();
642 $ilCtrl = $this->ctrl;
646 $this->setColumnSettings($column_gui);
648 if ($ilCtrl->getNextClass() ==
"ilcolumngui" &&
651 $html = $ilCtrl->forwardCommand($column_gui);
652 } elseif (!$ilCtrl->isAsynch() && $this->news_enabled) {
653 $html = $ilCtrl->getHTML($column_gui);
671 $this->open_form_tag = $a_val;
676 $this->close_form_tag = $a_val;
690 $ilCtrl = $this->ctrl;
691 $ilUser = $this->user;
693 $tpl =
new ilTemplate(
"tpl.infoscreen.html",
true,
true,
"components/ILIAS/InfoScreen");
696 if ($this->form_action ==
"") {
697 $this->setFormAction($ilCtrl->getFormAction($this));
704 if ($this->show_hidden_toggle) {
705 $this->addButton(
$lng->txt(
"show_hidden_sections"),
"JavaScript:toggleSections(this, '" .
$lng->txt(
"show_hidden_sections") .
"', '" .
$lng->txt(
"hide_visible_sections") .
"');");
713 if (count($this->top_buttons) > 0) {
714 $tpl->
addBlockFile(
"TOP_BUTTONS",
"top_buttons",
"tpl.buttons.html");
716 foreach ($this->top_buttons as $button) {
720 $tpl->
setVariable(
"BTN_TARGET", $button[
"target"]);
722 if ($button[
"primary"]) {
730 if ((count($this->top_formbuttons) > 0) && ($this->form_action !==
'')) {
731 $tpl->
addBlockFile(
"TOP_FORMBUTTONS",
"top_submitbuttons",
"tpl.submitbuttons.html",
"components/ILIAS/InfoScreen");
733 foreach ($this->top_formbuttons as $button) {
736 $tpl->
setVariable(
"BTN_COMMAND", $button[
"command"]);
743 if ($this->form_action !=
"") {
744 if ($this->open_form_tag) {
746 $tpl->
setVariable(
"FORMACTION", $this->form_action);
750 if ($this->close_form_tag) {
755 if (count($this->hiddenelements)) {
756 foreach ($this->hiddenelements as $hidden) {
759 $tpl->
setVariable(
"HIDDEN_VALUE", $hidden[
"value"]);
764 if ($this->availability_enabled) {
765 $this->addAvailability();
768 $this->addPreconditions();
771 if ($this->learning_progress_enabled) {
772 $this->showLearningProgress($tpl);
776 if ($this->private_notes_enabled && !
$ilSetting->get(
'disable_notes')) {
777 $html = $this->showNotesSection();
784 isset($this->gui_object) &&
785 method_exists($this->gui_object,
"getObject") &&
786 is_object($this->gui_object->getObject())
788 $this->addObjectSections();
792 for ($i = 1; $i <= $this->sec_nr; $i++) {
793 if (isset($this->section[$i][
"properties"])) {
795 foreach ($this->section[$i][
"properties"] as $property) {
796 if ($property[
"name"] !=
"") {
797 if (($property[
"link"] ??
"") ==
"") {
799 $tpl->
setVariable(
"TXT_PROPERTY_VALUE", $property[
"value"]);
802 $tpl->
setVariable(
"TXT_PROPERTY_LVALUE", $property[
"value"]);
803 $tpl->
setVariable(
"LINK_PROPERTY_VALUE", $property[
"link"]);
807 $tpl->
setVariable(
"TXT_PROPERTY", $property[
"name"]);
810 $tpl->
setVariable(
"TXT_PROPERTY_FULL_VALUE", $property[
"value"]);
816 if ($this->section[$i][
"hidden"] ??
false) {
817 $tpl->
setVariable(
"SECTION_HIDDEN",
" style=\"display:none;\"");
822 $tpl->
setVariable(
"TCLASS", $this->getTableClass());
823 $tpl->
setVariable(
"TXT_SECTION", $this->section[$i][
"title"]);
829 if (!is_null($this->mbox)) {
830 $tpl->
setVariable(
"MBOX", $this->
ui->renderer()->render([$this->mbox]));
838 if ($this->contextRefId !==
null) {
839 return $this->contextRefId;
842 return $this->gui_object->getObject()->getRefId();
847 $this->contextRefId = $contextRefId;
852 if ($this->contextObjId !==
null) {
853 return $this->contextObjId;
856 return $this->gui_object->getObject()->getId();
861 $this->contextObjId = $contextObjId;
866 if ($this->contentObjType !==
null) {
867 return $this->contentObjType;
870 return $this->gui_object->getObject()->getType();
875 $this->contentObjType = $contentObjType;
886 $ilUser = $this->user;
887 $rbacsystem = $this->rbacsystem;
889 if (!$rbacsystem->
checkAccess(
'read', $this->getContextRefId())) {
905 $this->
lng->loadLanguageModule(
'trac');
911 $this->
lng->txt(
'learning_progress')
918 $ilUser = $this->user;
923 $this->getContextObjId(),
924 $this->getContextRefId(),
928 $lp_marks =
new ilLPMarks($this->getContextObjId(), $ilUser->getId());
929 $lp_marks->setCompleted((
bool) $this->request->getLPEdit());
934 $this->
lng->loadLanguageModule(
'trac');
935 $this->tpl->setOnScreenMessage(
'success', $this->
lng->txt(
'trac_updated_status'),
true);
938 $this->
ctrl->redirect($this,
"");
951 $ilAccess = $this->access;
953 $notes_gui =
$DIC->notes()->gui();
954 $notes_gui->initJavascript();
955 $comments_gui = $notes_gui->getCommentsGUI(
956 $this->gui_object->getObject()->getId(),
958 $this->gui_object->getObject()->getType()
961 $next_class = $this->
ctrl->getNextClass($this);
962 $comments_gui->setUseObjectTitleHeader(
false);
968 $ref_id = $this->gui_object->getObject()->getRefId();
969 $has_write = $ilAccess->checkAccess(
"write",
"",
$ref_id);
971 if ($has_write &&
$ilSetting->get(
"comments_del_tutor",
"1")) {
972 $comments_gui->enablePublicNotesDeletion();
980 $ilAccess->checkAccess(
"edit_permissions",
"",
$ref_id)) {
981 $comments_gui->enableCommentsSettings();
988 if ($next_class === strtolower(ilCommentGUI::class)) {
989 $html = $this->
ctrl->forwardCommand($comments_gui);
991 $html = $comments_gui->getListHTML();
1002 if (strlen($a_section)) {
1003 $this->addSection($a_section);
1006 if ($infos = $ldap_mapping->getInfoStrings($this->gui_object->getObject()->getId())) {
1007 $info_combined =
'<div style="color:green;">';
1009 foreach ($infos as $info_string) {
1011 $info_combined .=
'<br />';
1013 $info_combined .= $info_string;
1015 $info_combined .=
'</div>';
1016 $this->addProperty($this->
lng->txt(
'applications'), $info_combined);
1022 $this->getTabs($this->tabs_gui);
1027 $next_class = $this->
ctrl->getNextClass($this);
1028 $force_active = ($next_class ==
"ilnotegui");
1032 $this->
ctrl->getLinkTarget($this,
"showSummary"),
1033 array(
"showSummary",
""),
1044 $this->hidden =
true;
1045 $this->show_hidden_toggle = $a_add_toggle;
1052 return "<a onClick=\"toggleSections(this, '" .
$lng->txt(
"show_hidden_sections") .
"', '" .
$lng->txt(
"hide_visible_sections") .
"'); return false;\" href=\"#\">" .
$lng->txt(
"show_hidden_sections") .
"</a>";
1063 !is_object($this->gui_object) ||
1064 !method_exists($this->gui_object,
"getObject") ||
1065 !is_object($this->gui_object->getObject())
1070 $obj = $this->gui_object->getObject();
1071 if ($obj->getRefId() <= 0) {
1076 $act->read($obj->getRefId());
1078 $this->
lng->loadLanguageModule(
"rep");
1079 $this->addSection($this->
lng->txt(
"rep_activation_availability"));
1080 $this->addAccessPeriodProperty();
1090 !is_object($this->gui_object) ||
1091 !method_exists($this->gui_object,
"getObject") ||
1092 !is_object($this->gui_object->getObject())
1097 $obj = $this->gui_object->getObject();
1098 if ($obj->getRefId() <= 0) {
1102 $conditions = ilConditionHandler::_getEffectiveConditionsOfTarget($obj->getRefId(), $obj->getId());
1104 if (
sizeof($conditions)) {
1105 for ($i = 0; $i < count($conditions); $i++) {
1111 $this->addPreconditionSection($obj, $conditions,
true);
1112 $this->addPreconditionSection($obj, $conditions,
false);
1119 bool $obligatory =
true
1122 $tree = $this->tree;
1125 $num_optional_required =
1129 $visible_conditions = array();
1130 $passed_optional = 0;
1131 foreach ($conditions as $condition) {
1132 if ($obligatory and !$condition[
'obligatory']) {
1135 if (!$obligatory and $condition[
'obligatory']) {
1139 if ($tree->
isDeleted($condition[
'trigger_ref_id'])) {
1147 $visible_conditions[] = $condition[
'id'];
1150 if (!$obligatory and $ok) {
1153 if ($passed_optional >= $num_optional_required) {
1161 foreach ($conditions as $condition) {
1162 if (!isset($condition[
"id"]) || !in_array($condition[
'id'], $visible_conditions)) {
1168 $condition[
'trigger_obj_id'],
1169 $condition[
'operator'],
1173 "link" => ilLink::_getLink($condition[
'trigger_ref_id'])
1177 if (count($properties) > 0) {
1179 $this->addSection(
$lng->txt(
"preconditions_obligatory_hint"));
1181 $this->addSection(sprintf(
1182 $lng->txt(
"preconditions_optional_hint"),
1183 $num_optional_required - $passed_optional
1187 foreach ($properties as $p) {
1190 "<a href='" . $p[
"link"] .
"'>" . $this->
html->strip($p[
"title"]) .
"</a>"
1202 $a_obj = $this->gui_object->getObject();
1204 $this->
lng->loadLanguageModule(
"rep");
1205 $this->
lng->loadLanguageModule(
"crs");
1208 if (is_object($a_obj)) {
1210 $act->read($a_obj->getRefId());
1213 $this->
lng->txt(
'rep_activation_access'),
1221 $this->
lng->txt(
'rep_activation_access'),
1222 $this->lng->txt(
'crs_visibility_limitless')
setVariable($variable, $value='')
Sets a variable value.
GUI class for public user profile presentation.
static sortArray(array $array, string $a_array_sortby_key, string $a_array_sortorder="asc", bool $a_numeric=false, bool $a_keep_keys=false)
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
static _lookupReadEvents($obj_id, $usr_id=null)
Reads all read events which occured on the object.
static _isActive()
Returns true, if change event tracking is active.
Column user interface class.
setAllBlockProperties(array $a_block_properties)
setEnableEdit(bool $a_enableedit)
setRepositoryMode(bool $a_repositorymode)
static getInstanceFromAjaxCall()
(Re-)Build instance from ajax call
static translateOperator(int $a_obj_id, string $a_operator, string $value='')
static calculateEffectiveRequiredTriggers(int $a_target_ref_id, int $a_target_obj_id, string $a_target_obj_type='')
static _checkCondition(array $condition, int $a_usr_id=0)
checks wether a single condition is fulfilled every trigger object type must implement a static metho...
static getEffectiveOptionalConditionsOfTarget(int $a_target_ref_id, int $a_target_obj_id, string $a_obj_type='')
Class ilCtrl provides processing control methods.
static formatDate(ilDateTime $date, bool $a_skip_day=false, bool $a_include_wd=false, bool $include_seconds=false, ?ilObjUser $user=null,)
static formatPeriod(ilDateTime $start, ilDateTime $end, bool $a_skip_starting_day=false, ?ilObjUser $user=null)
Format a period of two dates Shows: 14.
@classDescription Date and time handling
static getInstance()
Get singleton instance.
setContent(string $a_html)
Sets content for standard template.
setCurrentBlock(string $blockname=self::DEFAULT_BLOCK)
Sets the template to the given block.
get(string $part=self::DEFAULT_BLOCK)
Renders the given block and returns the html string.
addBlockFile(string $var, string $block, string $template_name, ?string $in_module=null)
overwrites ITX::addBlockFile
setVariable(string $variable, $value='')
Sets the given variable to the given value.
parseCurrentBlock(string $blockname=self::DEFAULT_BLOCK)
Parses the given block.
setRightContent(string $a_html)
Sets content of right column.
touchBlock(string $blockname)
overwrites ITX::touchBlock.
buildPublicAccessExportButton(int $rep_obj_id, int $obj_id)
enableNews(bool $a_enable=true)
StandardGUIRequest $request
setColumnSettings(ilColumnGUI $column_gui)
Set column settings.
setFormAction(string $a_form_action)
setBlockProperty(string $a_block_type, string $a_property, string $a_value)
This function is supposed to be used for block type specific properties, that should be passed to ilB...
bool $learning_progress_enabled
setCloseFormTag(bool $a_val)
bool $private_notes_enabled
__construct(?object $a_gui_object=null)
enableBookingInfo(bool $a_enable=true)
getTabs(ilTabsGUI $tabs_gui)
showLearningProgress(ilTemplate $a_tpl)
bool $availability_enabled
enableFeedback(bool $a_enable=true)
enableLearningProgress(bool $a_enable=true)
addSection(string $a_title)
ilGlobalPageTemplate $tpl
addProperty(string $a_name, string $a_value, string $a_link="")
add a property to current section
addFormButton(string $a_command, string $a_title, string $a_position="top")
add a form button to the info screen the form buttons are only valid if a form action is set
enableNewsEditing(bool $a_enable=true)
addButton(string $a_title, string $a_link, string $a_frame="", string $a_position="top", bool $a_primary=false)
enableAvailability(bool $a_enable=true)
hideFurtherSections(bool $a_add_toggle=true)
ILIAS Repository HTML HTMLUtil $html
enablePrivateNotes(bool $a_enable=true)
setContextObjId(int $contextObjId)
addAccessPeriodProperty()
addPropertyTextinput(string $a_name, string $a_input_name, string $a_input_value="", string $a_input_size="", string $direct_button_command="", string $direct_button_label="", bool $direct_button_primary=false)
setTableClass(string $a_val)
showLDAPRoleGroupMappingInfo(string $a_section='')
ILIAS UI Component MessageBox MessageBox $mbox
addHiddenElement(string $a_name, string $a_value)
saveProgress(bool $redirect=true)
setContextRefId(int $contextRefId)
addPreconditions()
Add preconditions.
setOpenFormTag(bool $a_val)
addPreconditionSection(ilObject $obj, array $conditions, bool $obligatory=true)
addMetaDataSections(int $a_rep_obj_id, int $a_obj_id, string $a_type)
setMessageBox(ILIAS\UI\Component\MessageBox\MessageBox $a_val)
DataFactory $data_factory
setContentObjType(string $contentObjType)
static _getInstance()
Get singleton instance of this class.
static _updateStatus(int $a_obj_id, int $a_usr_id, ?object $a_obj=null, bool $a_percentage=false, bool $a_force_raise=false)
static _tracProgress(int $a_user_id, int $a_obj_id, int $a_ref_id, string $a_obj_type='')
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
static _enabledLearningProgress()
static userExists(array $a_usr_ids=[])
Class ilObjectActivation.
static getInstanceByObjId(?int $obj_id, bool $stop_on_error=true)
get an instance of an Ilias object by object id
static getInstance(int $obj_id)
Class ilObject Basic functions for all objects.
static _lookupType(int $id, bool $reference=false)
static _getAllReferences(int $id)
get all reference ids for object ID
static _lookupTitle(int $obj_id)
class ilRbacSystem system function like checkAccess, addActiveRole ... Supporting system functions ar...
checkAccess(string $a_operations, int $a_ref_id, string $a_type="")
checkAccess represents the main method of the RBAC-system in ILIAS3 developers want to use With this ...
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
addSubTabTarget(string $a_text, string $a_link, $a_cmd="", $a_cmdClass="", string $a_frame="", bool $a_activate=false, bool $a_dir_text=false)
special template class to simplify handling of ITX/PEAR
parseCurrentBlock(string $part=ilGlobalTemplateInterface::DEFAULT_BLOCK)
Tree class data representation in hierachical trees using the Nested Set Model with Gaps by Joe Celco...
isInTree(?int $a_node_id)
get all information of a node.
isDeleted(int $a_node_id)
This is a wrapper for isSaved() with a more useful name.
static initjQuery(?ilGlobalTemplateInterface $a_tpl=null)
inits and adds the jQuery JS-File to the global or a passed template
Interface ilAccessHandler This interface combines all available interfaces which can be called via gl...
Interface Observer \BackgroundTasks Contains several chained tasks and infos about them.
if(!file_exists('../ilias.ini.php'))