4 include_once(
'./Services/Object/classes/class.ilObjectGUI.php');
5 include_once(
'./Modules/Session/classes/class.ilObjSession.php');
6 include_once(
'./Modules/Session/classes/class.ilSessionFile.php');
7 include_once
'./Services/PersonalDesktop/interfaces/interface.ilDesktopItemHandling.php';
44 public function __construct($a_data, $a_id, $a_call_by_reference, $a_prepare_output =
true)
53 parent::__construct($a_data, $a_id, $a_call_by_reference, $a_prepare_output);
56 $this->lng->loadLanguageModule(
"event");
57 $this->lng->loadLanguageModule(
'crs');
58 $this->lng->loadLanguageModule(
'trac');
59 $this->lng->loadLanguageModule(
'sess');
65 $this->logger =
$GLOBALS[
'DIC']->logger()->sess();
82 $next_class = $this->ctrl->getNextClass($this);
83 $cmd = $this->ctrl->getCmd();
87 $GLOBALS[
'DIC']->access()->checkAccess(
'read',
'',
$_GET[
'ref_id'])
89 $GLOBALS[
'DIC'][
'ilNavigationHistory']->addItem(
90 (
int)
$_GET[
'ref_id'],
97 switch ($next_class) {
98 case 'ilsessionmembershipgui':
99 $this->tabs_gui->activateTab(
'members');
100 include_once
'./Modules/Session/classes/class.ilSessionMembershipGUI.php';
102 $this->ctrl->forwardCommand($mem_gui);
105 case "ilinfoscreengui":
110 case 'ilobjectmetadatagui':
112 $this->tabs_gui->activateTab(
'metadata');
114 $this->ctrl->forwardCommand($md_gui);
118 case 'ilpermissiongui':
119 $this->tabs_gui->setTabActive(
'perm_settings');
120 include_once(
"Services/AccessControl/classes/class.ilPermissionGUI.php");
122 $ret = $this->ctrl->forwardCommand($perm_gui);
125 case 'ilobjectcopygui':
126 include_once
'./Services/Object/classes/class.ilObjectCopyGUI.php';
128 $cp->setType(
'sess');
129 $this->ctrl->forwardCommand($cp);
134 $this->tabs_gui->setTabActive(
"export");
135 include_once(
"./Services/Export/classes/class.ilExportGUI.php");
137 $exp_gui->addFormat(
"xml");
138 $ret = $this->ctrl->forwardCommand($exp_gui);
142 case "ilcommonactiondispatchergui":
143 include_once(
"Services/Object/classes/class.ilCommonActionDispatcherGUI.php");
145 $this->ctrl->forwardCommand($gui);
148 case 'ilmembershipgui':
149 $this->ctrl->setReturn($this,
'members');
150 include_once
'./Services/Membership/classes/class.ilMembershipMailGUI.php';
152 $this->ctrl->forwardCommand($mem);
155 case "illearningprogressgui":
156 include_once
'./Services/Tracking/classes/class.ilLearningProgressGUI.php';
159 $this->object->getRefId(),
162 $this->ctrl->forwardCommand($new_gui);
163 $this->tabs_gui->setTabActive(
'learning_progress');
166 case "ilpropertyformgui":
168 if (!is_object($this->
object)) {
172 if (
$form ===
true) {
180 if ($cmd ==
"applyFilter") {
181 $cmd ==
"applyFilter";
183 } elseif ($cmd ==
"resetFilter") {
184 $cmd ==
"resetFilter";
207 $this->ctrl->redirectByClass(
'ilSessionMembershipGUI',
'participants');
224 parent::prepareOutput($a_show_subobjects);
227 $title = strlen($this->object->getTitle()) ? (
': ' . $this->object->getTitle()) :
'';
229 include_once
'./Modules/Session/classes/class.ilSessionAppointment.php';
230 $this->tpl->setTitle(
231 $this->object->getFirstAppointment()->appointmentToString() .
$title 251 include_once
'./Services/Membership/classes/class.ilParticipants.php';
254 include_once
'./Modules/Session/classes/class.ilEventParticipants.php';
259 (count($event_part->getRegistered()) >= $this->
getCurrentObject()->getRegistrationMaxUsers())
261 include_once
'./Modules/Session/classes/class.ilSessionWaitingList.php';
263 $wait->addToList(
$ilUser->getId());
265 $this->ctrl->redirect($this,
'infoScreen');
272 $this->ctrl->redirect($this,
'info');
276 $part->register(
$ilUser->getId());
277 ilUtil::sendSuccess($this->lng->txt(
'event_registered'),
true);
278 $this->ctrl->redirect($this,
'infoScreen');
282 ilUtil::sendSuccess($this->lng->txt(
'sess_registered_confirm'),
true);
283 $part->addSubscriber(
$ilUser->getId());
284 $this->ctrl->redirect($this,
'infoScreen');
302 $this->ctrl->redirect($this,
'infoScreen');
305 include_once
'./Modules/Session/classes/class.ilEventParticipants.php';
310 ilUtil::sendSuccess($this->lng->txt(
'event_unregistered'),
true);
313 ilUtil::sendSuccess($this->lng->txt(
'event_registered'),
true);
316 $this->ctrl->redirect($this,
'infoScreen');
331 include_once
'./Modules/Session/classes/class.ilSessionParticipants.php';
333 if ($part->isSubscriber(
$ilUser->getId())) {
334 $part->deleteSubscriber(
$ilUser->getId());
337 $part->unregister(
$ilUser->getId());
339 include_once
'./Modules/Session/classes/class.ilSessionWaitingList.php';
345 $has_access =
$GLOBALS[
'DIC']->access()->checkAccessOfUser(
349 $this->object->getRefId()
352 $parent =
$GLOBALS[
'DIC']->repositoryTree()->getParentId($this->object->getRefId());
357 ilUtil::sendSuccess($this->lng->txt(
'event_unregistered'),
true);
358 $this->ctrl->returnToParent($this);
369 public static function _goto($a_target)
373 $ilAccess = $DIC->access();
375 $lng = $DIC->language();
377 if ($ilAccess->checkAccess(
'visible',
"", $a_target)) {
379 } elseif ($ilAccess->checkAccess(
"read",
"", ROOT_FOLDER_ID)) {
382 $lng->txt(
"msg_no_perm_read_item"),
396 include_once
'./Services/PersonalDesktop/classes/class.ilDesktopItemGUI.php';
406 include_once
'./Services/PersonalDesktop/classes/class.ilDesktopItemGUI.php';
419 $this->ctrl->setCmd(
"showSummary");
420 $this->ctrl->setCmdClass(
"ilinfoscreengui");
435 $tree = $DIC[
'tree'];
438 if ($course_ref_id =
$tree->checkForParentType($this->object->getRefId(),
'crs')) {
440 include_once
"Services/Object/classes/class.ilObjectActivation.php";
443 include_once(
"./Modules/Course/classes/class.ilObjCourse.php");
444 include_once(
"./Modules/Course/classes/class.ilObjCourseGUI.php");
454 $this->object->getRefId()
482 $ilToolbar = $DIC[
'ilToolbar'];
489 include_once
'./Modules/Session/classes/class.ilSessionWaitingList.php';
491 include_once
'./Services/Membership/classes/class.ilParticipants.php';
494 include_once
'./Modules/Session/classes/class.ilEventParticipants.php';
497 $btn_attend->addCSSClass(
"btn-primary");
498 $this->ctrl->setParameter($this,
"ref_id", $this->
getCurrentObject()->getRefId());
501 $btn_attend->setCaption($this->lng->txt(
"event_unregister"),
false);
502 $btn_attend->setUrl($this->ctrl->getLinkTargetByClass(array(
"ilRepositoryGUI",
"ilObjSessionGUI"),
"unregister"));
503 $ilToolbar->addButtonInstance($btn_attend);
505 } elseif ($part->isSubscriber(
$ilUser->getId())) {
506 $btn_attend->setCaption($this->lng->txt(
"event_unregister"),
false);
507 $btn_attend->setUrl($this->ctrl->getLinkTargetByClass(array(
"ilRepositoryGUI",
"ilObjSessionGUI"),
"unregister"));
508 $ilToolbar->addButtonInstance($btn_attend);
511 $btn_attend->setCaption($this->lng->txt(
"leave_waiting_list"),
false);
512 $btn_attend->setUrl($this->ctrl->getLinkTargetByClass(array(
"ilRepositoryGUI",
"ilObjSessionGUI"),
"unregister"));
513 $ilToolbar->addButtonInstance($btn_attend);
522 (count($event_part->getRegistered()) >= $this->
getCurrentObject()->getRegistrationMaxUsers())
526 $btn_attend->setCaption($this->lng->txt(
"mem_add_to_wl"),
false);
527 $btn_attend->setUrl($this->ctrl->getLinkTargetByClass(array(
"ilRepositoryGUI",
"ilObjSessionGUI"),
"register"));
528 $ilToolbar->addButtonInstance($btn_attend);
535 if (!isset(
$_SESSION[
'sess_hide_info'])) {
537 $btn_attend->setCaption($this->lng->txt(
"join_session"),
false);
538 $btn_attend->setUrl($this->ctrl->getLinkTargetByClass(array(
"ilRepositoryGUI",
"ilObjSessionGUI"),
"register"));
539 $ilToolbar->addButtonInstance($btn_attend);
558 $ilAccess = $DIC[
'ilAccess'];
561 $tree = $DIC[
'tree'];
562 $ilToolbar = $DIC[
'ilToolbar'];
566 $this->tabs_gui->setTabActive(
'info_short');
570 include_once(
"./Services/InfoScreen/classes/class.ilInfoScreenGUI.php");
575 $parent_id =
$tree->getParentId($this->object->getRefId());
579 $this->object->getId(),
583 $lng->loadLanguageModule(
"cntr");
586 foreach ($eventItems as $item) {
588 $list_gui->setContainerObject($this);
592 $html .= $list_gui->getListItemHTML(
601 $info->addSection($this->lng->txt(
'event_materials'));
611 if (strlen($this->object->getLocation())
or strlen($this->object->getDetails())) {
612 $info->addSection($this->lng->txt(
'event_section_information'));
614 if (strlen(
$location = $this->object->getLocation())) {
616 $this->lng->txt(
'event_location'),
620 if (strlen($this->object->getDetails())) {
622 $this->lng->txt(
'event_details_workflow'),
629 $record_gui->parse();
632 $info->addMetaDataSections($this->object->getId(), 0, $this->
object->getType());
636 if ($this->object->hasTutorSettings()) {
637 $info->addSection($this->lng->txt(
'event_tutor_data'));
638 if (strlen($fullname = $this->object->getName())) {
640 $this->lng->txt(
'event_lecturer'),
644 if (strlen(
$email = $this->object->getEmail())) {
646 $this->lng->txt(
'tutor_email'),
650 if (strlen($phone = $this->object->getPhone())) {
652 $this->lng->txt(
'tutor_phone'),
660 $contacts = $parts->getContacts();
661 if (count($contacts) > 0) {
662 $info->addSection($this->lng->txt(
"crs_mem_contacts"));
663 foreach ($contacts as $contact) {
665 $pgui->setBackUrl($this->ctrl->getLinkTargetByClass(
"ilinfoscreengui"));
666 $pgui->setEmbedded(
true);
667 $info->addProperty(
"", $pgui->getHTML());
672 $this->ctrl->forwardCommand(
$info);
675 require_once
'Services/Tracking/classes/class.ilChangeEvent.php';
677 $this->object->getType(),
678 $this->
object->getRefId(),
679 $this->
object->getId(),
699 if (!is_object($this->
object)) {
715 $this->ctrl->setParameter($this,
'ref_id', $this->object->getRefId());
716 $this->ctrl->setParameter($this,
'new_type',
'');
717 $this->ctrl->redirect($this,
'materials');
736 $this->ctrl->saveParameter($this,
"new_type");
740 if (!$this->form->checkInput()) {
741 $ilErr->setMessage($this->lng->txt(
'err_check_input'));
748 $ilErr->setMessage($this->lng->txt(
'err_check_input'));
754 $this->
object->validate();
755 $this->
object->getFirstAppointment()->validate();
757 if (strlen(
$ilErr->getMessage())) {
759 $this->form->setValuesByPost();
764 $this->
object->create();
765 $this->
object->createReference();
766 $this->
object->putInTree(
$_GET[
"ref_id"]);
767 $this->
object->setPermissions(
$_GET[
"ref_id"]);
770 $this->object->getId(),
777 $this->record_gui->writeEditForm($this->object->getId());
784 $this->
object->applyDidacticTemplate($dtpl);
788 if (!$this->form->getInput(
"lp_preset")) {
789 include_once
"Services/Tracking/classes/class.ilLPObjSettings.php";
792 $lp_obj_settings->update(
false);
796 $this->
object->getFirstAppointment()->setSessionId($this->object->getId());
797 $this->
object->getFirstAppointment()->create();
803 if ($a_redirect_on_success) {
805 $this->ctrl->returnToParent($this);
815 $tree = $DIC[
'tree'];
817 include_once
'./Modules/Session/classes/class.ilEventItems.php';
823 if (!isset($_FILES[
'files'][
'name'][$counter])) {
826 if (!strlen($_FILES[
'files'][
'name'][$counter])) {
831 include_once
'./Modules/File/classes/class.ilObjFile.php';
834 $file->setDescription(
'');
836 $file->setFileType($_FILES[
'files'][
'type'][$counter]);
837 $file->setFileSize($_FILES[
'files'][
'size'][$counter]);
839 $new_ref_id = $file->createReference();
840 $file->putInTree(
$tree->getParentId($this->object->getRefId()));
841 $file->setPermissions(
$tree->getParentId($this->object->getRefId()));
842 $file->createDirectory();
844 $upload = $DIC->upload();
845 if (!$upload->hasBeenProcessed()) {
848 $file->getUploadFile(
849 $_FILES[
'files'][
'tmp_name'][$counter],
850 $_FILES[
'files'][
'name'][$counter]
853 $items[] = $new_ref_id;
874 $tree = $DIC[
'tree'];
876 if (!$this->rec->getFrequenceType()) {
879 include_once(
'./Services/Calendar/classes/class.ilCalendarRecurrenceCalculator.php');
882 $period_start = clone $this->
object->getFirstAppointment()->getStart();
885 $period_end = clone $this->
object->getFirstAppointment()->getStart();
889 $period_diff = $this->
object->getFirstAppointment()->getEnd()->get(
IL_CAL_UNIX) -
890 $this->
object->getFirstAppointment()->getStart()->get(
IL_CAL_UNIX);
891 $parent_id =
$tree->getParentId($this->object->getRefId());
893 include_once
'./Modules/Session/classes/class.ilEventItems.php';
898 foreach ($date_list->get() as $date) {
903 $new_obj = $this->
object->cloneObject($parent_id);
908 $new_obj->applyDidacticTemplate($dtpl);
912 $new_obj->getFirstAppointment()->setStartingTime($date->get(
IL_CAL_UNIX));
913 $new_obj->getFirstAppointment()->setEndingTime($date->get(
IL_CAL_UNIX) + $period_diff);
914 $new_obj->getFirstAppointment()->update();
915 $new_obj->update(
true);
918 if (!$a_activate_lp) {
919 include_once
"Services/Tracking/classes/class.ilLPObjSettings.php";
922 $lp_obj_settings->update(
false);
941 $this->tabs_gui->setTabActive(
'settings');
944 $this->tpl->addBlockFile(
'ADM_CONTENT',
'adm_content',
'tpl.sess_edit.html',
'Modules/Session');
945 $this->tpl->setVariable(
'EVENT_EDIT_TABLE', $this->form->getHTML());
947 if (!count($this->object->getFiles())) {
951 foreach ($this->object->getFiles() as $file) {
952 $table_data[
'id'] = $file->getFileId();
953 $table_data[
'filename'] = $file->getFileName();
954 $table_data[
'filetype'] = $file->getFileType();
955 $table_data[
'filesize'] = $file->getFileSize();
957 $rows[] = $table_data;
960 include_once(
"./Modules/Session/classes/class.ilSessionFileTableGUI.php");
962 $table_gui->setTitle($this->lng->txt(
"event_files"));
963 $table_gui->setData(
$rows);
964 $table_gui->addCommandButton(
"cancel", $this->lng->txt(
"cancel"));
965 $table_gui->addMultiCommand(
"confirmDeleteFiles", $this->lng->txt(
"delete"));
966 $table_gui->setSelectAllCheckbox(
"file_id");
967 $this->tpl->setVariable(
'EVENT_FILE_TABLE', $table_gui->getHTML());
985 $old_autofill = $this->
object->hasWaitingListAutoFill();
989 if (!$this->form->checkInput()) {
990 $ilErr->setMessage($this->lng->txt(
'err_check_input'));
997 $ilErr->setMessage($this->lng->txt(
'err_check_input'));
1002 $this->
object->validate();
1003 $this->
object->getFirstAppointment()->validate();
1005 if (strlen(
$ilErr->getMessage())) {
1011 $this->
object->update();
1012 $this->
object->getFirstAppointment()->update();
1015 $this->object->getId(),
1022 $this->record_gui->writeEditForm();
1027 if (!$old_autofill &&
1028 $this->object->hasWaitingListAutoFill()) {
1029 $this->
object->handleAutoFill();
1032 ilUtil::sendSuccess($this->lng->txt(
'event_updated'),
true);
1033 $this->ctrl->redirect($this,
'edit');
1034 #$this->object->initFiles(); 1035 #$this->editObject(); 1048 $this->tabs_gui->setTabActive(
'settings');
1050 if (!count(
$_POST[
'file_id'])) {
1056 include_once(
"Services/Utilities/classes/class.ilConfirmationGUI.php");
1060 $c_gui->setFormAction($this->ctrl->getFormAction($this,
"deleteFiles"));
1061 $c_gui->setHeaderText($this->lng->txt(
"info_delete_sure"));
1062 $c_gui->setCancel($this->lng->txt(
"cancel"),
"edit");
1063 $c_gui->setConfirm($this->lng->txt(
"confirm"),
"deleteFiles");
1066 foreach (
$_POST[
"file_id"] as $file_id) {
1068 if ($file->getSessionId() != $this->
object->getEventId()) {
1073 $c_gui->addItem(
"file_id[]", $file_id, $file->getFileName());
1076 $this->tpl->setContent($c_gui->getHTML());
1089 if (!count(
$_POST[
'file_id'])) {
1098 $this->
object->initFiles();
1107 $tree = $DIC[
'tree'];
1109 $is_course = $is_group =
false;
1112 $this->container_ref_id =
$tree->checkForParentType($this->object->getRefId(),
'grp');
1113 if ($this->container_ref_id) {
1116 if (!$this->container_ref_id) {
1117 $this->container_ref_id =
$tree->checkForParentType($this->object->getRefId(),
'crs');
1118 if ($this->container_ref_id) {
1122 if (!$this->container_ref_id) {
1128 if ($a_init_participants && $this->container_obj_id) {
1130 include_once
'./Modules/Course/classes/class.ilCourseParticipants.php';
1132 } elseif ($is_group) {
1133 include_once
'./Modules/Group/classes/class.ilGroupParticipants.php';
1146 $tree = $DIC[
'tree'];
1149 $this->tabs_gui->activateTab(
'materials');
1152 $parent_ref_id =
$tree->getParentId($this->object->getRefId());
1154 include_once
"Services/Object/classes/class.ilObjectAddNewItemGUI.php";
1156 $gui->setDisabledObjectTypes(
1164 $gui->setAfterCreationCallback($this->ref_id);
1167 include_once
'Modules/Session/classes/class.ilEventItems.php';
1168 $this->event_items =
new ilEventItems($this->object->getId());
1170 include_once
'Modules/Session/classes/class.ilSessionMaterialsTableGUI.php';
1173 $tbl->setDisableFilterHiding(
true);
1175 $tbl->addMultiCommand(
'saveMaterials', $this->lng->txt(
'sess_assign'));
1176 $tbl->addMultiCommand(
"removeMaterials", $this->lng->txt(
"remove"));
1178 $tbl->setTitle($this->lng->txt(
"event_assign_materials_table"));
1179 $tbl->setDescription($this->lng->txt(
'event_assign_materials_info'));
1181 $tbl->setMaterialItems($this->event_items->getItems());
1186 $this->tpl->setContent(
$tbl->getHTML());
1195 $tbl->writeFilterToSession();
1196 $tbl->resetOffset();
1197 $this->ctrl->redirect($this,
"materials");
1206 $tbl->resetOffset();
1207 $tbl->resetFilter();
1208 $this->ctrl->redirect($this,
"materials");
1216 $items_checked = is_array(
$_POST[
'items']) ?
$_POST[
'items'] : array();
1218 $this->event_items =
new ilEventItems($this->object->getId());
1232 include_once
'./Modules/Session/classes/class.ilEventItems.php';
1234 $this->event_items =
new ilEventItems($this->object->getId());
1235 $db_items = $this->event_items->
getItems();
1237 $list_items_checked = is_array(
$_POST[
'items']) ?
$_POST[
'items'] : array();
1238 $list_items_checked = array_map(
'intval', $list_items_checked);
1240 $items_to_save = array_merge($db_items, $list_items_checked);
1241 $items_to_save = array_unique($items_to_save);
1243 $this->event_items->setItems($items_to_save);
1244 $this->event_items->update();
1253 include_once
'Modules/Session/classes/class.ilSessionMaterialsTableGUI.php';
1256 $tbl->storeNavParameter();
1258 ilUtil::sendSuccess($this->lng->txt(
'settings_saved'),
true);
1259 $this->ctrl->redirect($this,
'materials');
1274 $ilTabs = $DIC[
'ilTabs'];
1277 $ilTabs->setTabActive(
'event_edit_members');
1280 $form =
$list->initForm(
'printAttendanceList');
1293 include_once
'Services/Membership/classes/class.ilAttendanceList.php';
1299 $list->setId(
'sessattlst');
1301 $event_app = $this->
object->getFirstAppointment();
1305 $desc .=
" " . $this->
object->getTitle();
1306 $list->setTitle($this->lng->txt(
'sess_attendance_list'), $desc);
1308 $list->addPreset(
'mark', $this->lng->txt(
'trac_mark'),
true);
1309 $list->addPreset(
'comment', $this->lng->txt(
'trac_comment'),
true);
1310 if ($this->object->enabledRegistration()) {
1311 $list->addPreset(
'registered', $this->lng->txt(
'event_tbl_registered'),
true);
1313 $list->addPreset(
'participated', $this->lng->txt(
'event_tbl_participated'),
true);
1314 $list->addBlank($this->lng->txt(
'sess_signature'));
1316 $list->addUserFilter(
'registered', $this->lng->txt(
'event_list_registered_only'));
1331 $list->initFromForm();
1332 $list->setCallback(array($this,
'getAttendanceListUserData'));
1334 include_once
'Modules/Session/classes/class.ilEventParticipants.php';
1352 $data = $this->event_part->getUser($a_user_id);
1354 if ($a_filters && $a_filters[
"registered"] && !
$data[
"registered"]) {
1359 $this->lng->txt(
'yes') :
1360 $this->lng->txt(
'no');
1361 $data[
'participated'] =
$data[
'participated'] ?
1362 $this->lng->txt(
'yes') :
1363 $this->lng->txt(
'no');
1380 $ilAccess = $DIC[
'ilAccess'];
1382 $tree = $DIC[
'tree'];
1384 if (!$ilAccess->checkAccess(
'manage_members',
'', $this->object->getRefId())) {
1385 $ilErr->raiseError($this->lng->txt(
'msg_no_perm_read'),
$ilErr->MESSAGE);
1388 $this->tpl->addBlockFile(
'ADM_CONTENT',
'adm_content',
'tpl.sess_list.html',
'Modules/Session');
1389 $this->
__showButton($this->ctrl->getLinkTarget($this,
'exportCSV'), $this->lng->txt(
'event_csv_export'));
1391 include_once
'Modules/Session/classes/class.ilEventParticipants.php';
1393 $this->tpl->addBlockfile(
"EVENTS_TABLE",
"events_table",
"tpl.table.html");
1394 $this->tpl->addBlockfile(
'TBL_CONTENT',
'tbl_content',
'tpl.sess_list_row.html',
'Modules/Session');
1397 $members = $members_obj->getParticipants();
1403 $this->lng->txt(
"event_overview"),
1405 $this->lng->txt(
'obj_usr')
1407 $this->ctrl->setParameter($this,
'offset', (
int)
$_GET[
'offset']);
1409 $course_ref_id =
$tree->checkForParentType($this->object->getRefId(),
'crs');
1411 foreach (
$tree->getSubtree(
$tree->getNodeData($course_ref_id),
false,
'sess') as $event_id) {
1413 if (!is_object($tmp_event)
or $tmp_event->getType() !=
'sess') {
1420 $headerVars = array();
1421 $colWidth = array();
1424 $headerVars[] =
"name";
1425 $colWidth[] =
'20%';
1429 $headerVars[] =
"event_" .
$i;
1430 $colWidth[] = 80 / count(
$events) .
"%";
1433 $this->tpl->setVariable(
"FORMACTION", $this->ctrl->getFormAction($this));
1435 $tbl->setHeaderVars($headerVars, $this->ctrl->getParameterArray($this,
'eventsList'));
1436 $tbl->setColumnWidth($colWidth);
1438 $tbl->setOrderColumn($_GET[
"sort_by"]);
1439 $tbl->setOrderDirection($_GET[
"sort_order"]);
1440 $tbl->setOffset($_GET[
"offset"]);
1441 $tbl->setLimit(
$ilUser->getPref(
"hits_per_page"));
1442 $tbl->setMaxCount(count($members));
1443 $tbl->setFooter(
"tblfooter", $this->lng->txt(
"previous"), $this->lng->txt(
"next"));
1445 $sliced_users = array_slice($members, $_GET[
'offset'],
$_SESSION[
'tbl_limit']);
1446 $tbl->disable(
'sort');
1450 foreach ($sliced_users as $user_id) {
1451 foreach (
$events as $event_obj) {
1452 $this->tpl->setCurrentBlock(
"eventcols");
1457 $this->tpl->setVariable(
"IMAGE_PARTICIPATED", $event_part->hasParticipated($user_id) ?
1461 $this->tpl->setVariable(
"PARTICIPATED", $event_part->hasParticipated($user_id) ?
1462 $this->lng->txt(
'event_participated') :
1463 $this->lng->txt(
'event_not_participated'));
1466 $this->tpl->parseCurrentBlock();
1469 $this->tpl->setCurrentBlock(
"tbl_content");
1471 $this->tpl->setVariable(
"CSS_ROW",
ilUtil::switchColor($counter++,
'tblrow1',
'tblrow2'));
1472 $this->tpl->setVariable(
"LASTNAME",
$name[
'lastname']);
1473 $this->tpl->setVariable(
"FIRSTNAME",
$name[
'firstname']);
1475 $this->tpl->parseCurrentBlock();
1478 $this->tpl->setVariable(
"HEAD_TXT_LEGEND", $this->lng->txt(
"legend"));
1479 $this->tpl->setVariable(
"HEAD_TXT_DIGIT", $this->lng->txt(
"event_digit"));
1480 $this->tpl->setVariable(
"HEAD_TXT_EVENT", $this->lng->txt(
"event"));
1481 $this->tpl->setVariable(
"HEAD_TXT_LOCATION", $this->lng->txt(
"event_location"));
1482 $this->tpl->setVariable(
"HEAD_TXT_DATE_TIME", $this->lng->txt(
"event_date_time"));
1484 foreach (
$events as $event_obj) {
1485 $this->tpl->setCurrentBlock(
"legend_loop");
1486 $this->tpl->setVariable(
"LEGEND_CSS_ROW",
ilUtil::switchColor($counter++,
'tblrow1',
'tblrow2'));
1487 $this->tpl->setVariable(
"LEGEND_DIGIT",
$i++);
1488 $this->tpl->setVariable(
"LEGEND_EVENT_TITLE", $event_obj->getTitle());
1489 $this->tpl->setVariable(
"LEGEND_EVENT_DESCRIPTION", $event_obj->getDescription());
1490 $this->tpl->setVariable(
"LEGEND_EVENT_LOCATION", $event_obj->getLocation());
1491 $this->tpl->setVariable(
"LEGEND_EVENT_APPOINTMENT", $event_obj->getFirstAppointment()->appointmentToString());
1492 $this->tpl->parseCurrentBlock();
1507 if (is_object($this->form)) {
1511 $this->lng->loadLanguageModule(
'dateplaner');
1513 include_once(
"./Services/Form/classes/class.ilPropertyFormGUI.php");
1515 include_once(
'./Services/YUI/classes/class.ilYuiUtil.php');
1519 $this->form->setMultipart(
true);
1520 $this->form->setTableWidth(
'600px');
1521 $this->form->setFormAction($this->ctrl->getFormAction($this));
1522 $this->form->setMultipart(
true);
1524 if ($a_mode ==
'create') {
1528 $this->lng->loadLanguageModule(
'dateplaner');
1529 include_once
'./Services/Form/classes/class.ilDateDurationInputGUI.php';
1532 $dur->enableToggleFullTime(
1533 $this->lng->txt(
'event_fulltime_info'),
1534 $this->
object->getFirstAppointment()->enabledFulltime() ? true : false
1536 $dur->setShowTime(
true);
1537 $dur->setStart($this->object->getFirstAppointment()->getStart());
1538 $dur->setEnd($this->object->getFirstAppointment()->getEnd());
1540 $this->form->addItem($dur);
1544 if ($a_mode ==
'create') {
1545 if (!is_object($this->rec)) {
1546 include_once(
'./Modules/Session/classes/class.ilEventRecurrence.php');
1549 include_once(
'./Services/Calendar/classes/Form/class.ilRecurrenceInputGUI.php');
1552 $rec->setRecurrence($this->rec);
1553 $this->form->addItem($rec);
1557 $lp->
setInfo($this->lng->txt(
"sess_lp_preset_info"));
1558 $lp->setChecked(
true);
1559 $this->form->addItem($lp);
1563 $section->setTitle($this->lng->txt(
'event_section_information'));
1568 $title->setValue($this->object->getTitle());
1570 $title->setMaxLength(70);
1571 $this->form->addItem(
$title);
1575 $desc->
setValue($this->object->getLongDescription());
1578 $this->form->addItem($desc);
1582 $desc->
setValue($this->object->getLocation());
1585 $this->form->addItem($desc);
1588 $details =
new ilTextAreaInputGUI($this->lng->txt(
'event_details_workflow'),
'details');
1589 $details->
setValue($this->object->getDetails());
1590 $details->setCols(50);
1591 $details->setRows(4);
1592 $this->form->addItem($details);
1594 if ($a_mode ==
'create') {
1599 $this->record_gui->setRefId((
int)
$_GET[
'ref_id']);
1600 $this->record_gui->setPropertyForm($this->form);
1601 $this->record_gui->parse();
1606 $this->object->getId()
1609 $this->record_gui->parse();
1615 $section->setTitle($this->lng->txt(
'event_tutor_data'));
1619 $tutor_name =
new ilTextInputGUI($this->lng->txt(
'tutor_name'),
'tutor_name');
1620 $tutor_name->
setValue($this->object->getName());
1621 $tutor_name->setSize(20);
1622 $tutor_name->setMaxLength(70);
1623 $this->form->addItem($tutor_name);
1626 $tutor_email =
new ilTextInputGUI($this->lng->txt(
'tutor_email'),
'tutor_email');
1627 $tutor_email->
setValue($this->object->getEmail());
1628 $tutor_email->setSize(20);
1629 $tutor_email->setMaxLength(70);
1630 $this->form->addItem($tutor_email);
1633 $tutor_phone =
new ilTextInputGUI($this->lng->txt(
'tutor_phone'),
'tutor_phone');
1634 $tutor_phone->
setValue($this->object->getPhone());
1635 $tutor_phone->setSize(20);
1636 $tutor_phone->setMaxLength(70);
1637 $this->form->addItem($tutor_phone);
1640 $section->setTitle($this->lng->txt(
'sess_section_reg'));
1643 include_once
'./Modules/Session/classes/class.ilSessionMembershipRegistrationSettingsGUI.php';
1644 include_once
'./Services/Membership/classes/class.ilMembershipRegistrationSettings.php';
1655 $reg_settings->addMembershipFormElements($this->form,
'');
1659 $section->setTitle($this->lng->txt(
'event_assign_files'));
1663 $files->setFilenames(array(0 =>
''));
1664 $this->form->addItem(
$files);
1667 $features->setTitle($this->lng->txt(
'obj_features'));
1668 $this->form->addItem($features);
1670 $this->object->getId(),
1677 $gallery =
new ilCheckboxInputGUI($this->lng->txt(
'sess_show_members'),
'show_members');
1678 $gallery->
setChecked($this->object->getShowMembers());
1679 $gallery->setInfo($this->lng->txt(
'sess_show_participants_info'));
1680 $this->form->addItem($gallery);
1685 $mail_type->
setValue($this->object->getMailToMembersType());
1688 $this->lng->txt(
'sess_mail_admins_only'),
1690 $this->lng->txt(
'sess_mail_admins_only_info')
1692 $mail_type->addOption($mail_tutors);
1695 $this->lng->txt(
'sess_mail_all'),
1697 $this->lng->txt(
'sess_mail_all_info')
1699 $mail_type->addOption($mail_all);
1700 $this->form->addItem($mail_type);
1706 $this->form->
setTitle($this->lng->txt(
'event_table_create'));
1708 $this->form->addCommandButton(
'save', $this->lng->txt(
'event_btn_add'));
1709 $this->form->addCommandButton(
'saveAndAssignMaterials', $this->lng->txt(
'event_btn_add_edit'));
1710 $this->form->addCommandButton(
'cancel', $this->lng->txt(
'cancel'));
1715 $this->form->setTitle($this->lng->txt(
'event_table_update'));
1717 $this->form->addCommandButton(
'update', $this->lng->txt(
'save'));
1718 $this->form->addCommandButton(
'cancelEdit', $this->lng->txt(
'cancel'));
1734 $event = $this->form->getItemByPostVar(
'event');
1735 if ($event->getStart() && $event->getEnd()) {
1736 $this->
object->getFirstAppointment()->setStartingTime($event->getStart()->get(
IL_CAL_UNIX));
1737 $this->
object->getFirstAppointment()->setEndingTime($event->getStart()->get(
IL_CAL_UNIX));
1738 $this->
object->getFirstAppointment()->setStart($event->getStart());
1739 $this->
object->getFirstAppointment()->setEnd($event->getEnd());
1740 $this->
object->getFirstAppointment()->toggleFulltime($event->getStart() instanceof
ilDate);
1751 $this->
object->setRegistrationType((
int)
$_POST[
'registration_type']);
1753 $this->
object->setRegistrationMaxUsers((
int) $_POST[
'registration_max_members']);
1754 $this->
object->enableRegistrationUserLimit((
int) $_POST[
'registration_membership_limited']);
1755 $this->
object->setShowMembers((
int) $_POST[
'show_members']);
1756 $this->
object->setMailToMembersType((
int) $_POST[
'mail_type']);
1758 switch ((
int) $_POST[
'waiting_list']) {
1760 $this->
object->enableRegistrationWaitingList(
true);
1761 $this->
object->setWaitingListAutoFill(
true);
1765 $this->
object->enableRegistrationWaitingList(
true);
1766 $this->
object->setWaitingListAutoFill(
false);
1770 $this->
object->enableRegistrationWaitingList(
false);
1771 $this->
object->setWaitingListAutoFill(
false);
1784 include_once(
'./Modules/Session/classes/class.ilSessionRecurrence.php');
1787 switch (
$_POST[
'frequence']) {
1789 $this->rec->setFrequenceType(
$_POST[
'frequence']);
1790 $this->rec->setInterval((
int)
$_POST[
'count_DAILY']);
1794 $this->rec->setFrequenceType($_POST[
'frequence']);
1795 $this->rec->setInterval((
int) $_POST[
'count_WEEKLY']);
1796 if (is_array($_POST[
'byday_WEEKLY'])) {
1802 $this->rec->setFrequenceType($_POST[
'frequence']);
1803 $this->rec->setInterval((
int) $_POST[
'count_MONTHLY']);
1804 switch ((
int) $_POST[
'subtype_MONTHLY']) {
1810 switch ((
int) $_POST[
'monthly_byday_day']) {
1813 $this->rec->setBYSETPOS((
int) $_POST[
'monthly_byday_num']);
1814 $this->rec->setBYDAY(
'MO,TU,WE,TH,FR');
1819 $this->rec->setBYMONTHDAY((
int) $_POST[
'monthly_byday_num']);
1823 $this->rec->setBYDAY((
int) $_POST[
'monthly_byday_num'] . $_POST[
'monthly_byday_day']);
1829 $this->rec->setBYMONTHDAY((
int) $_POST[
'monthly_bymonthday']);
1835 $this->rec->setFrequenceType($_POST[
'frequence']);
1836 $this->rec->setInterval((
int) $_POST[
'count_YEARLY']);
1837 switch ((
int) $_POST[
'subtype_YEARLY']) {
1843 $this->rec->setBYMONTH((
int) $_POST[
'yearly_bymonth_byday']);
1844 $this->rec->setBYDAY((
int) $_POST[
'yearly_byday_num'] . $_POST[
'yearly_byday']);
1848 $this->rec->setBYMONTH((
int) $_POST[
'yearly_bymonth_by_monthday']);
1849 $this->rec->setBYMONTHDAY((
int) $_POST[
'yearly_bymonthday']);
1856 switch ((
int)
$_POST[
'until_type']) {
1858 $this->rec->setFrequenceUntilDate(null);
1863 $this->rec->setFrequenceUntilDate(null);
1864 $this->rec->setFrequenceUntilCount((
int) $_POST[
'count']);
1868 $frequence = $this->form->getItemByPostVar(
'frequence');
1869 $end = $frequence->getRecurrence()->getFrequenceUntilDate();
1870 $this->rec->setFrequenceUntilCount(0);
1871 $this->rec->setFrequenceUntilDate(
$end);
1886 return mktime(
$time[
'h'],
$time[
'm'], 0, $date[
'm'], $date[
'd'], $date[
'y']);
1899 $ilLocator = $DIC[
'ilLocator'];
1903 include_once
'./Modules/Session/classes/class.ilSessionAppointment.php';
1904 $title = strlen($this->object->getTitle()) ? (
': ' . $this->object->getTitle()) :
'';
1905 $title = $this->
object->getFirstAppointment()->appointmentToString() .
$title;
1907 $ilLocator->addItem($title, $this->ctrl->getLinkTarget($this,
"infoScreen"),
"",
$_GET[
"ref_id"]);
1921 $tree = $DIC->repositoryTree();
1922 $ctrl = $DIC->ctrl();
1924 $parent_id =
$tree->getParentId($this->object->getRefId());
1930 $parent_class =
'ilObj' . $parent_class .
'GUI';
1932 $ctrl->setParameterByClass($parent_class,
"ref_id", $parent_id);
1933 $ctrl->redirectByClass($parent_class,
"view");
1947 $ilAccess = $DIC[
'ilAccess'];
1948 $ilTabs = $DIC[
'ilTabs'];
1949 $tree = $DIC[
'tree'];
1951 $ilHelp = $DIC[
'ilHelp'];
1954 $ilHelp->setScreenIdComponent(
"sess");
1956 $parent_id =
$tree->getParentId($this->object->getRefId());
1961 $this->tabs_gui->setBackTarget(
1962 $this->lng->txt(
'back_to_' . $parent_type .
'_content'),
1963 $ilCtrl->getLinkTarget($this,
"redirectToParentContentPage")
1966 $this->tabs_gui->addTarget(
1968 $this->ctrl->getLinkTarget($this,
'infoScreen')
1971 if ($ilAccess->checkAccess(
'write',
'', $this->object->getRefId())) {
1972 $this->tabs_gui->addTarget(
1974 $this->ctrl->getLinkTarget($this,
'edit')
1977 if ($ilAccess->checkAccess(
'manage_materials',
'', $this->object->getRefId())) {
1978 $this->tabs_gui->addTab(
1980 $this->lng->txt(
'crs_materials'),
1981 $this->ctrl->getLinkTarget($this,
'materials')
1987 $is_participant = $this->
object->getMembersObject()->isAssigned(
$ilUser->getId());
1989 $membership_gui->addMemberTab($this->tabs_gui, $is_participant);
1993 include_once
'./Services/Tracking/classes/class.ilLearningProgressAccess.php';
1995 $this->tabs_gui->addTarget(
1996 'learning_progress',
1997 $this->ctrl->getLinkTargetByClass(array(
'ilobjsessiongui',
'illearningprogressgui'),
''),
1999 array(
'illplistofobjectsgui',
'illplistofsettingsgui',
'illearningprogressgui',
'illplistofprogressgui')
2004 if ($ilAccess->checkAccess(
'edit_metadata',
'', $this->ref_id)) {
2006 $mdtab = $mdgui->getTab();
2008 $this->tabs_gui->addTab(
2010 $this->lng->txt(
'meta_data'),
2017 if ($ilAccess->checkAccess(
"write",
"", $this->object->getRefId())) {
2018 $this->tabs_gui->addTarget(
2020 $this->ctrl->getLinkTargetByClass(
"ilexportgui",
""),
2028 if ($ilAccess->checkAccess(
'edit_permission',
"", $this->object->getRefId())) {
2029 $this->tabs_gui->addTarget(
2031 $this->ctrl->getLinkTargetByClass(
"ilpermissiongui",
"perm"),
2032 array(
"perm",
"info",
"owner"),
2046 include_once
'./Modules/Session/classes/class.ilEventItems.php';
2047 $event_items =
new ilEventItems($this->object->getId());
2049 $event_items->update();
2063 $tmp_data = array();
2064 foreach ($a_usr_ids as $usr_id) {
2065 $tmp_data[$usr_id] = array();
2078 if (!$this->container_ref_id) {
2095 $tree = $DIC[
'tree'];
2097 $parent_id =
$tree->getParentId((
int) $_REQUEST[
'ref_id']);
2099 $ilCtrl->setParameterByClass(
"ilrepositorygui",
"ref_id", $parent_id);
2101 $ilCtrl->redirectByClass(
"ilrepositorygui",
"");
2111 $local_roles =
$GLOBALS[
'DIC']->rbac()->review()->getRolesOfRoleFolder($this->object->getRefId(),
false);
2113 foreach ($local_roles as $role_id) {
2115 if (substr(
$title, 0, 19) ==
'il_sess_participant') {
2129 return $GLOBALS[
'DIC']->rbac()->review()->getRolesOfRoleFolder($this->object->getRefId(),
false);
2139 $link = chr(13) . chr(10) . chr(13) . chr(10);
2140 $link .= $this->lng->txt(
'sess_mail_permanent_link');
2141 $link .= chr(13) . chr(10) . chr(13) . chr(10);
2142 include_once
'./Services/Link/classes/class.ilLink.php';
2144 return rawurlencode(base64_encode($link));
2157 $parent_id =
$_GET[
"ref_id"];
2159 $new_type = $_REQUEST[
"new_type"];
2163 $ilErr->raiseError($this->lng->txt(
"no_create_permission"));
2166 $this->lng->loadLanguageModule($new_type);
2167 $this->ctrl->setParameter($this,
"new_type", $new_type);
2170 if (
$form->checkInput()) {
2172 include_once(
"./Services/Export/classes/class.ilImport.php");
2173 $imp =
new ilImport((
int) $parent_id);
2175 $new_id = $imp->importObject(
2177 $_FILES[
"importfile"][
"tmp_name"],
2178 $_FILES[
"importfile"][
"name"],
2182 $this->tmp_import_dir = $imp->getTemporaryImportDir();
2183 if (!$a_catch_errors) {
2187 ilUtil::sendFailure($this->lng->txt(
"obj_import_file_error") .
" <br />" . $e->getMessage());
2188 $form->setValuesByPost();
2194 $this->ctrl->setParameter($this,
"new_type",
"");
2210 $form->setValuesByPost();
getItems()
get assigned items
static _lookupLogin($a_user_id)
lookup login
static _lookupName($a_user_id)
lookup user name
static _recordReadEvent( $a_type, $a_ref_id, $obj_id, $usr_id, $isCatchupWriteEvents=true, $a_ext_rc=false, $a_ext_time=false)
Records a read event and catches up with write events.
This class represents an option in a radio group.
setTitle($a_title)
Set Title.
loadRecurrenceSettings()
load recurrence settings
const IL_CAL_FREQ_MONTHLY
redirectToParentContentPageObject()
Redirect to parent content page.
if(isset($_REQUEST['delete'])) $list
removeItems($a_items)
Remove specific items from the DB.
eventsListObject()
list sessions of all user
initCreateForm($a_new_type)
showJoinRequestButton(ilToolbarGUI $ilToolbar=null)
static getItemsByEvent($a_event_id)
Get session material / event items.
afterSaveCallback(ilObject $a_obj)
Custom callback after object is created (in parent containert.
static _unregister($a_usr_id, $a_event_id)
initForm($a_mode)
Init Form.
registerObject()
register to session
GUI class for the workflow of copying objects.
setPropertyForm($form)
set property form object
sendFileObject()
send file
membersObject()
Redirect to member adminsitration.
importEditFormPostValues()
Load edit form values from post.
saveMaterialsObject()
save material assignment
updateObject()
update object
__showButton($a_cmd, $a_text, $a_target='')
static _getInstanceByObjId($a_obj_id)
Get singleton instance.
applyFilter()
Apply filter.
if(!array_key_exists('StateId', $_REQUEST)) $id
setValue($a_value)
Set Value.
static _gotoRepositoryRoot($a_raise_error=false)
Goto repository root.
static setUseRelativeDates($a_status)
set use relative dates
static _lookupTitle($a_id)
lookup object title
infoScreenObject()
this one is called from the info button in the repository not very nice to set cmdClass/Cmd manually...
createObject()
create new object form
static addToDesktop()
Add desktop item public.
static resetCaches()
Reset internal caches.
prepareOutput($a_show_subobjects=true)
executeCommand()
execute command
getCurrentObject()
Get session object.
static _isRegistered($a_usr_id, $a_event_id)
Base class for attendance lists.
static _goto($a_target)
goto
getAttendanceListUserData($a_user_id, $a_filters)
Get user data for attendance list.
static getInstance($a_ref_id)
Get instance by ref_id.
static sendInfo($a_info="", $a_keep=false)
Send Info Message to Screen.
calculateDateList(ilDateTime $a_start, ilDateTime $a_end, $a_limit=-1)
calculate date list
readMemberData($a_usr_ids)
Used for waiting list.
addLocatorItems()
Add session locator.
Export User Interface Class.
static checkAccess($a_ref_id, $a_allow_only_read=true)
check access to learning progress
initImportForm($a_new_type)
Init object import form.
static _modifyItemGUI( $a_item_list_gui, $a_cmd_class, $a_item_data, $a_show_path, $a_abo_status, $a_course_ref_id, $a_course_obj_id, $a_parent_ref_id=0)
We need a static version of this, e.g.
GUI class for public user profile presentation.
__toUnix($date, $time)
protected
getLocalRoles()
get all local roles
getDefaultMemberRole()
Get default member role.
createRecurringSessions($a_activate_lp=true)
create recurring sessions
resetFilter()
Reset filter.
setInfoObject($info)
get info sections
if(isset($_POST['submit'])) $form
static _sortIds($a_ids, $a_table, $a_field, $a_id_name)
Function that sorts ids by a given table field using WHERE IN E.g: __sort(array(6,7),'usr_data','lastname','usr_id') => sorts by lastname.
GUI class for membership features.
Calculates an ilDateList for a given calendar entry and recurrence rule.
static _gotoRepositoryNode($a_ref_id, $a_cmd="frameset")
Goto repository root.
__construct($a_data, $a_id, $a_call_by_reference, $a_prepare_output=true)
Constructor.
static getImagePath($img, $module_path="", $mode="output", $offline=false)
get image path (for images located in a template directory)
const IL_CAL_FREQ_DAILY
Model of calendar entry recurrcences.
initDidacticTemplate(ilPropertyFormGUI $form)
Show didactic template types.
Class ilObjectGUI Basic methods of all Output classes.
static _lookupObjId($a_id)
static makeClickable($a_text, $detectGotoLinks=false)
makeClickable In Texten enthaltene URLs und Mail-Adressen klickbar machen
initContainer($a_init_participants=false)
This class represents a text property in a property form.
static initDomEvent()
Init YUI DomEvent.
const REGISTRATION_LIMITED_USERS
static _register($a_usr_id, $a_event_id)
saveObject($a_redirect_on_success=true)
save object
static stripSlashes($a_str, $a_strip_html=true, $a_allow="")
strip slashes if magic qoutes is enabled
showJoinRequestButtonInCalendar(ilToolbarGUI $a_ilToolbar)
static updateServiceSettingsForm($a_obj_id, ilPropertyFormGUI $form, $services)
Update service settings.
static _isOnList($a_usr_id, $a_obj_id)
Check if a user on the waiting list.
static getInstanceByObjId($a_obj_id, $stop_on_error=true)
get an instance of an Ilias object by object id
static addListGUIActivationProperty(ilObjectListGUI $a_list_gui, array &$a_item)
Get timing details for list gui.
static _getInstanceByObjId($a_obj_id)
Get singleton instance.
static _lookupType($a_id, $a_reference=false)
lookup object type
cancelEditObject()
Cancel editigin type $ilCtrl type $tree.
static getInstance($a_ref_id)
Get instance.
static sendFailure($a_info="", $a_keep=false)
Send Failure Message to Screen.
deleteFilesObject()
delete files
materialsObject()
show material assignment
createMailSignature()
Create a course mail signature.
static removeFromDesktop()
Remove item from personal desktop public.
const LP_MODE_DEACTIVATED
joinObject()
Called from info screen.
static _lookupAboStatus($a_id)
static formatPeriod(ilDateTime $start, ilDateTime $end, $a_skip_starting_day=false)
Format a period of two date Shows: 14.
Interface for gui classes (e.g ilLuceneSearchGUI) that offer add/remove to/from desktop.
redirectToRefId($a_ref_id, $a_cmd="")
redirects to (repository) view per ref id usually to a container and usually used at the end of a sav...
Render add new item selector.
const LP_CONTEXT_REPOSITORY
This class represents a text area property in a property form.
removeMaterialsObject()
Remove materials from the current object.
static switchColor($a_num, $a_css1, $a_css2)
switches style sheets for each even $a_num (used for changing colors of different result rows) ...
static initServiceSettingsForm($a_obj_id, ilPropertyFormGUI $form, $services)
Init service settings form.
getCreationMode()
get creation mode
getRefId()
get reference id public
modifyItemGUI($a_item_list_gui, $a_item_data, $a_show_path)
Modify Item ListGUI for presentation in container type $tree.
confirmDeleteFilesObject()
confirm delete files
static getInstanceByRefId($a_ref_id, $stop_on_error=true)
get an instance of an Ilias object by reference id
getContainerRefId()
container ref id
static deleteUserEntry($a_usr_id, $a_obj_id)
Delete one user entry.
checkPermission($a_perm, $a_cmd="", $a_type="", $a_ref_id=null)
Check permission and redirect on error.
getDidacticTemplateVar($a_type)
Get didactic template setting from creation screen.
New PermissionGUI (extends from old ilPermission2GUI) RBAC related output.
static _getInstance($a_obj_id)
get instance by obj_id
importFileObject($parent_id=null, $a_catch_errors=true)
Import.
addItem($a_item_ref_id)
Add one item.
setValue($a_value)
Set Value.
initAttendanceList()
Init attendance list object.
addHeaderAction()
Add header action menu.
static factory($a_type)
Get list gui by type This method caches all the returned list guis.
checkPermissionBool($a_perm, $a_cmd="", $a_type="", $a_ref_id=null)
Check permission.
attendanceListObject()
show attendance list selection
saveAndAssignMaterialsObject()
Save and assign sessoin materials.
Class ilObjUserTrackingGUI.
static _getLink($a_ref_id, $a_type='', $a_params=array(), $append="")
unregisterObject()
unregister from session
static getInstanceFromAjaxCall()
(Re-)Build instance from ajax call
$GLOBALS['JPEG_Segment_Names']
Global Variable: XMP_tag_captions.
printAttendanceListObject()
print attendance list
afterImport(ilObject $a_new_object)
Post (successful) object import hook.
static deliverFile( $a_file, $a_filename, $a_mime='', $isInline=false, $removeAfterDelivery=false, $a_exit_after=true)
deliver file for download via browser.
Confirmation screen class.
postUpdateMaterials()
redirect to list of materials without offset/page.