5include_once
"./Services/Container/classes/class.ilContainerGUI.php";
6include_once(
'./Modules/Group/classes/class.ilObjGroup.php');
35 public function __construct($a_data, $a_id, $a_call_by_reference, $a_prepare_output =
false)
40 parent::__construct($a_data, $a_id, $a_call_by_reference, $a_prepare_output);
42 $this->lng->loadLanguageModule(
'grp');
51 $next_class = $this->ctrl->getNextClass($this);
52 $cmd = $this->ctrl->getCmd();
59 $ilAccess->checkAccess(
"read",
"",
$_GET[
"ref_id"])) {
60 include_once(
"./Services/Link/classes/class.ilLink.php");
61 $ilNavigationHistory->addItem(
69 if ($next_class ==
"" && $cmd ==
"" && $this->object->isNewsTimelineLandingPageEffective()
70 && $ilAccess->checkAccess(
"read",
"",
$_GET[
"ref_id"])) {
71 $this->ctrl->redirectbyclass(
"ilnewstimelinegui");
74 switch ($next_class) {
75 case 'illtiproviderobjectsettinggui':
77 $this->tabs_gui->activateTab(
'settings');
78 $this->tabs_gui->activateSubTab(
'lti_provider');
80 $lti_gui->setCustomRolesForSelection(
$GLOBALS[
'DIC']->rbac()->review()->
getLocalRoles($this->object->getRefId()));
81 $lti_gui->offerLTIRolesForSelection(
false);
82 $this->ctrl->forwardCommand($lti_gui);
86 case 'ilgroupmembershipgui':
88 $this->tabs_gui->activateTab(
'members');
90 include_once
'./Modules/Group/classes/class.ilGroupMembershipGUI.php';
92 $this->ctrl->forwardCommand($mem_gui);
96 case 'ilgroupregistrationgui':
97 $this->ctrl->setReturn($this,
'');
98 $this->tabs_gui->setTabActive(
'join');
99 include_once(
'./Modules/Group/classes/class.ilGroupRegistrationGUI.php');
101 $this->ctrl->forwardCommand($registration);
104 case 'ilpermissiongui':
105 $this->tabs_gui->setTabActive(
'perm_settings');
106 include_once(
"Services/AccessControl/classes/class.ilPermissionGUI.php");
108 $ret =&$this->ctrl->forwardCommand($perm_gui);
111 case "ilinfoscreengui":
115 case "illearningprogressgui":
116 include_once
'./Services/Tracking/classes/class.ilLearningProgressGUI.php';
120 $this->object->getRefId(),
123 $this->ctrl->forwardCommand($new_gui);
124 $this->tabs_gui->setTabActive(
'learning_progress');
127 case 'ilobjcoursegroupinggui':
130 include_once
'./Modules/Course/classes/class.ilObjCourseGroupingGUI.php';
131 $this->ctrl->setReturn($this,
'edit');
133 $this->ctrl->forwardCommand($crs_grp_gui);
135 $this->tabs_gui->setTabActive(
'settings');
136 $this->tabs_gui->setSubTabActive(
'groupings');
139 case 'ilcoursecontentgui':
141 include_once
'./Modules/Course/classes/class.ilCourseContentGUI.php';
143 $this->ctrl->forwardCommand($course_content_obj);
146 case 'ilpublicuserprofilegui':
147 require_once
'./Services/User/classes/class.ilPublicUserProfileGUI.php';
149 $this->tabs_gui->setTabActive(
'group_members');
150 $this->tabs_gui->setSubTabActive(
'grp_members_gallery');
152 if (
$_GET[
"back_url"] ==
"") {
153 $profile_gui->setBackUrl($this->ctrl->getLinkTargetByClass([
"ilGroupMembershipGUI",
"ilUsersGalleryGUI"],
'view'));
155 $html = $this->ctrl->forwardCommand($profile_gui);
156 $this->tpl->setVariable(
"ADM_CONTENT",
$html);
160 $this->tabs_gui->setTabActive(
'none');
162 include_once(
"./Services/Style/Content/classes/class.ilObjStyleSheet.php");
163 $this->tpl->setVariable(
164 "LOCATION_CONTENT_STYLESHEET",
171 case "ilcontainerpagegui":
174 $this->tpl->setContent(
$ret);
178 case 'ilobjectcopygui':
179 include_once
'./Services/Object/classes/class.ilObjectCopyGUI.php';
182 $this->ctrl->forwardCommand($cp);
185 case "ilobjstylesheetgui":
189 case 'ilobjectcustomuserfieldsgui':
190 include_once
'./Services/Membership/classes/class.ilObjectCustomUserFieldsGUI.php';
193 $this->tabs_gui->setTabActive(
'settings');
194 $this->ctrl->forwardCommand($cdf_gui);
197 case 'ilmemberagreementgui':
198 include_once(
'Services/Membership/classes/class.ilMemberAgreementGUI.php');
199 $this->ctrl->setReturn($this,
'');
200 $this->tabs_gui->setTabActive(
'view_content');
202 $this->ctrl->forwardCommand($agreement);
206 $this->tabs_gui->setTabActive(
'export');
207 include_once
'./Services/Export/classes/class.ilExportGUI.php';
209 $exp->addFormat(
'xml');
210 $this->ctrl->forwardCommand($exp);
213 case "ilcommonactiondispatchergui":
214 include_once(
"Services/Object/classes/class.ilCommonActionDispatcherGUI.php");
216 $this->ctrl->forwardCommand($gui);
219 case 'ilobjectservicesettingsgui':
220 $this->ctrl->setReturn($this,
'edit');
222 $this->tabs_gui->activateTab(
'settings');
223 $this->tabs_gui->activateSubTab(
'tool_settings');
225 include_once
'./Services/Object/classes/class.ilObjectServiceSettingsGUI.php';
228 $this->object->getId(),
233 $this->ctrl->forwardCommand(
$service);
236 case 'ilmailmembersearchgui':
237 include_once
'Services/Mail/classes/class.ilMail.php';
240 if (!($ilAccess->checkAccess(
'manage_members',
'', $this->object->getRefId()) ||
242 $rbacsystem->checkAccess(
'internal_mail', $mail->getMailObjectReferenceId())) {
243 $ilErr->raiseError($this->lng->txt(
"msg_no_perm_read"),
$ilErr->MESSAGE);
246 $this->tabs_gui->setTabActive(
'members');
248 include_once
'./Services/Contact/classes/class.ilMailMemberSearchGUI.php';
249 include_once
'./Services/Contact/classes/class.ilMailMemberGroupRoles.php';
253 $this->ctrl->forwardCommand($mail_search);
256 case 'ilbadgemanagementgui':
257 $this->tabs_gui->setTabActive(
'obj_tool_setting_badges');
258 include_once
'Services/Badge/classes/class.ilBadgeManagementGUI.php';
260 $this->ctrl->forwardCommand($bgui);
263 case "ilcontainernewssettingsgui":
265 $this->tabs_gui->setTabActive(
'settings');
266 include_once(
"./Services/Container/classes/class.ilContainerNewsSettingsGUI.php");
268 $this->ctrl->forwardCommand($news_set_gui);
271 case "ilnewstimelinegui":
273 $this->tabs_gui->setTabActive(
'news_timeline');
274 include_once(
"./Services/News/classes/class.ilNewsTimelineGUI.php");
276 $t->setUserEditAll($ilAccess->checkAccess(
'write',
'', $this->object->getRefId(),
'grp'));
278 $this->ctrl->forwardCommand(
$t);
279 include_once
'Services/Tracking/classes/class.ilLearningProgress.php';
282 $this->object->getId(),
283 $this->object->getRefId(),
288 case "ilcontainerskillgui":
289 $this->tabs_gui->activateTab(
'obj_tool_setting_skills');
290 include_once(
"./Services/Container/Skills/classes/class.ilContainerSkillGUI.php");
292 $this->ctrl->forwardCommand($gui);
295 case 'ilcalendarpresentationgui':
296 include_once(
'./Services/Calendar/classes/class.ilCalendarPresentationGUI.php');
298 $ret = $this->ctrl->forwardCommand($cal);
305 !$ilAccess->checkAccess(
'visible',
'', $this->object->getRefId(),
'grp') and
306 !$ilAccess->checkAccess(
'read',
'', $this->object->getRefId(),
'grp')) {
307 $ilErr->raiseError($this->lng->txt(
"msg_no_perm_read"),
$ilErr->MESSAGE);
311 if ($cmd ==
'infoScreenGoto') {
312 if ($this->object->isRegistrationEnabled()) {
321 && !$rbacsystem->checkAccess(
'read', $this->object->getRefId()) && $cmd !=
'infoScreen')
324 if (!
$rbacsystem->checkAccess(
'join', $this->object->getRefId())) {
325 $this->ctrl->redirect($this,
"infoScreen");
327 include_once(
'./Modules/Group/classes/class.ilGroupRegistrationGUI.php');
328 $this->ctrl->redirectByClass(
"ilGroupRegistrationGUI",
"show");
346 include_once
'Services/Tracking/classes/class.ilLearningProgress.php';
349 $this->object->getId(),
350 $this->object->getRefId(),
354 if (strtolower(
$_GET[
"baseClass"]) ==
"iladministrationgui") {
355 parent::viewObject();
360 include_once(
'Services/Membership/classes/class.ilMemberAgreementGUI.php');
361 $this->tabs_gui->setTabActive(
'view_content');
362 $this->ctrl->setReturn($this,
'view');
364 $this->ctrl->setCmdClass(get_class($agreement));
365 $this->ctrl->forwardCommand($agreement);
369 $this->tabs_gui->setTabActive(
'view_content');
380 $ilTabs->activateTab(
"view_content");
381 $ret = parent::renderObject();
397 if ($course_ref_id =
$tree->checkForParentType($this->object->getRefId(),
'crs')) {
398 include_once(
"./Modules/Course/classes/class.ilObjCourse.php");
399 include_once(
"./Modules/Course/classes/class.ilObjCourseGUI.php");
403 'ilcoursecontentgui',
409 $this->object->getRefId()
428 $GLOBALS[
'tree']->checkForParentType($new_object->
getRefId(),
'crs',
true) ||
435 include_once
'./Services/Container/classes/class.ilContainerSortingSettings.php';
437 $sort->setSortMode($sort_mode);
442 include_once
'./Modules/Group/classes/class.ilGroupParticipants.php';
445 $members_obj->updateNotification(
$ilUser->getId(),
$ilSetting->get(
'mail_grp_admin_notification',
true));
449 $this->ctrl->setParameter($this,
"ref_id", $new_object->
getRefId());
450 $this->ctrl->redirect($this,
'edit');
466 $this->tabs_gui->setTabActive(
'settings');
467 $this->tabs_gui->setSubTabActive(
'grp_settings');
473 $this->tpl->setVariable(
'ADM_CONTENT', $a_form->getHTML());
485 include_once
'./Services/DidacticTemplate/classes/class.ilDidacticTemplateUtils.php';
487 $this->object->getRefId(),
488 (
int) $_REQUEST[
'grp_type']
492 $this->ctrl->redirect($this,
'edit');
508 if (
$form->checkInput()) {
510 include_once
'./Services/DidacticTemplate/classes/class.ilDidacticTemplateObjSettings.php';
514 $new_type_info =
$form->getInput(
'didactic_type');
515 if ($new_type_info) {
516 $new_type = explode(
'_',
$form->getInput(
'didactic_type'));
517 $new_type = $new_type[1];
519 $modified = ($new_type != $old_type);
523 $old_autofill = $this->
object->hasWaitingListAutoFill();
530 $this->
object->enableUnlimitedRegistration((
bool) !
$form->getInput(
'reg_limit_time'));
531 $this->
object->enableMembershipLimitation((
bool)
$form->getInput(
'registration_membership_limited'));
532 $this->
object->setMinMembers((
int)
$form->getInput(
'registration_min_members'));
533 $this->
object->setMaxMembers((
int)
$form->getInput(
'registration_max_members'));
534 $this->
object->enableRegistrationAccessCode((
bool)
$form->getInput(
'reg_code_enabled'));
535 $this->
object->setRegistrationAccessCode(
$form->getInput(
'reg_code'));
536 $this->
object->setViewMode(
$form->getInput(
'view_mode'));
537 $this->
object->setMailToMembersType((
int)
$form->getInput(
'mail_type'));
538 $this->
object->setShowMembers((
int)
$form->getInput(
'show_members'));
541 $period =
$form->getItemByPostVar(
'period');
542 $this->
object->setStart($period->getStart());
543 $this->
object->setEnd($period->getEnd());
545 $reg =
$form->getItemByPostVar(
"reg");
547 $this->
object->enableUnlimitedRegistration(
false);
549 $this->
object->enableUnlimitedRegistration(
true);
552 $this->
object->setRegistrationStart($reg->getStart());
553 $this->
object->setRegistrationEnd($reg->getEnd());
555 $cancel_end =
$form->getItemByPostVar(
"cancel_end");
556 $this->
object->setCancellationEnd($cancel_end->getDate());
558 switch ((
int)
$_POST[
'waiting_list']) {
560 $this->
object->enableWaitingList(
true);
561 $this->
object->setWaitingListAutoFill(
true);
565 $this->
object->enableWaitingList(
true);
566 $this->
object->setWaitingListAutoFill(
false);
570 $this->
object->enableWaitingList(
false);
571 $this->
object->setWaitingListAutoFill(
false);
576 $this->
object->update();
579 include_once
'./Services/Object/classes/class.ilObjectServiceSettingsGUI.php';
581 $this->object->getId(),
599 $this->object->hasWaitingListAutoFill()) {
600 $this->
object->handleAutoFill();
604 require_once(
'Services/Tracking/classes/class.ilChangeEvent.php');
607 $this->object->getId(),
614 include_once
'Modules/Group/classes/class.ilECSGroupSettings.php';
616 $ecs->handleSettingsUpdate();
620 $form->setValuesByPost();
627 if ($new_type == 0) {
628 $new_type_txt =
$GLOBALS[
'lng']->txt(
'il_grp_status_open');
630 include_once
'./Services/DidacticTemplate/classes/class.ilDidacticTemplateSetting.php';
632 $new_type_txt = $dtpl->getPresentationTitle(
$GLOBALS[
'lng']->getLangKey());
636 include_once
'./Services/Utilities/classes/class.ilConfirmationGUI.php';
639 $confirm->setFormAction($this->ctrl->getFormAction($this));
643 $this->lng->txt(
'grp_info_new_grp_type') .
': ' . $new_type_txt
645 $confirm->addButton($this->lng->txt(
'grp_change_type'),
'updateGroupType');
646 $confirm->setCancel($this->lng->txt(
'cancel'),
'edit');
648 $this->tpl->setContent($confirm->getHTML());
652 $this->ctrl->redirect($this,
'edit');
667 $this->tabs_gui->setTabActive(
'settings');
668 $this->tabs_gui->setSubTabActive(
'grp_icon_settings');
674 $tpl->setContent($a_form->getHTML());
679 include_once
"Services/Form/classes/class.ilPropertyFormGUI.php";
681 $form->setFormAction($this->ctrl->getFormAction($this));
686 $form->addCommandButton(
'updateGroupIcons', $this->lng->txt(
'save'));
704 if (
$form->checkInput()) {
706 if ($ilSetting->get(
"custom_icons")) {
707 if (
$_POST[
"cont_icon_delete"]) {
708 $this->
object->removeCustomIcon();
710 $this->
object->saveIcons($_FILES[
"cont_icon"][
'tmp_name']);
713 $this->ctrl->redirect($this,
"editGroupIcons");
716 $form->setValuesByPost();
728 $this->tabs_gui->setTabActive(
'settings');
729 $this->tabs_gui->setSubTabActive(
'grp_map_settings');
731 include_once(
'./Services/Maps/classes/class.ilMapUtil.php');
733 !$ilAccess->checkAccess(
"write",
"", $this->object->getRefId())) {
737 $latitude = $this->
object->getLatitude();
738 $longitude = $this->
object->getLongitude();
739 $zoom = $this->
object->getLocationZoom();
742 if ($latitude == 0 && $longitude == 0 && $zoom == 0) {
744 $latitude =
$def[
"latitude"];
745 $longitude =
$def[
"longitude"];
746 $zoom =
$def[
"zoom"];
750 include_once(
"./Services/Form/classes/class.ilPropertyFormGUI.php");
754 $form->setTitle($this->lng->txt(
"grp_map_settings"));
758 $this->lng->txt(
"grp_enable_map"),
761 $public->setValue(
"1");
762 $public->setChecked($this->object->getEnableGroupMap());
763 $form->addItem($public);
767 $this->lng->txt(
"grp_map_location"),
770 $loc_prop->setLatitude($latitude);
771 $loc_prop->setLongitude($longitude);
772 $loc_prop->setZoom($zoom);
773 $form->addItem($loc_prop);
775 $form->addCommandButton(
"saveMapSettings", $this->lng->txt(
"save"));
777 $this->tpl->setVariable(
"ADM_CONTENT",
$form->getHTML());
788 $this->
object->update();
790 $ilCtrl->redirect($this,
"editMapSettings");
807 $this->tabs_gui->setTabActive(
'settings');
808 $this->tabs_gui->setSubTabActive(
'grp_info_settings');
811 $this->tpl->setContent(
$form->getHTML());
822 include_once(
"./Services/Form/classes/class.ilPropertyFormGUI.php");
824 $form->setFormAction($this->ctrl->getFormAction($this,
'updateInfo'));
825 $form->setTitle($this->lng->txt(
'grp_general_informations'));
826 $form->addCommandButton(
'updateInfo', $this->lng->txt(
'save'));
827 $form->addCommandButton(
'cancel', $this->lng->txt(
'cancel'));
830 $area->setInfo($this->lng->txt(
'grp_information_info'));
831 $area->setValue($this->object->getInformation());
834 $form->addItem($area);
850 $this->
object->update();
860 include_once(
'./Services/PrivacySecurity/classes/class.ilPrivacySettings.php');
863 include_once
'./Services/Tracking/classes/class.ilObjUserTracking.php';
864 $this->show_tracking =
869 if ($this->show_tracking) {
870 include_once(
'./Services/Object/classes/class.ilObjectLP.php');
872 $this->show_tracking = $olp->isActive();
875 if ($this->show_tracking) {
876 include_once
'Services/Tracking/classes/class.ilLPStatusWrapper.php';
882 if ($privacy->enabledGroupAccessTimes()) {
883 include_once(
'./Services/Tracking/classes/class.ilLearningProgress.php');
887 $do_prtf = (is_array($selected_columns) &&
888 in_array(
'prtf', $selected_columns) &&
891 include_once
"Modules/Portfolio/classes/class.ilObjPortfolio.php";
894 $this->ctrl->getLinkTarget($this,
"members")
899 foreach ($ids as $usr_id) {
901 $tmp_data[
'firstname'] =
$name[
'firstname'];
902 $tmp_data[
'lastname'] =
$name[
'lastname'];
904 $tmp_data[
'notification'] = $this->
object->members_obj->isNotificationEnabled($usr_id) ? 1 : 0;
905 $tmp_data[
'usr_id'] = $usr_id;
908 foreach ((array) $profile_data[$usr_id] as $field => $value) {
909 $tmp_data[$field] = $value;
912 if ($this->show_tracking) {
913 if (in_array($usr_id, $completed)) {
915 } elseif (in_array($usr_id, $in_progress)) {
917 } elseif (in_array($usr_id,
$failed)) {
924 if ($privacy->enabledGroupAccessTimes()) {
925 if (isset($progress[$usr_id][
'ts']) and $progress[$usr_id][
'ts']) {
929 $tmp_data[
'access_time_unix'] = $tmp_date->get(
IL_CAL_UNIX);
931 $tmp_data[
'access_time'] = $this->lng->txt(
'no_date');
932 $tmp_data[
'access_time_unix'] = 0;
937 $tmp_data[
'prtf'] = $all_prtf[$usr_id];
940 $members[$usr_id] = $tmp_data;
942 return $members ? $members : array();
956 if ($part->isLastAdmin(
$ilUser->getId())) {
962 $this->tabs_gui->setTabActive(
'grp_btn_unsubscribe');
964 include_once
"Services/Utilities/classes/class.ilConfirmationGUI.php";
966 $cgui->setHeaderText($this->lng->txt(
'grp_dismiss_myself'));
967 $cgui->setFormAction($this->ctrl->getFormAction($this));
968 $cgui->setCancel($this->lng->txt(
"cancel"),
"cancel");
969 $cgui->setConfirm($this->lng->txt(
"grp_btn_unsubscribe"),
"unsubscribe");
970 $this->tpl->setContent($cgui->getHTML());
985 $this->
object->members_obj->delete($ilUser->getId());
987 include_once
'./Modules/Group/classes/class.ilGroupMembershipMailNotification.php';
988 $this->
object->members_obj->sendNotification(
992 $this->
object->members_obj->sendNotification(
1001 $tree->getParentId($this->object->getRefId())
1003 $ilCtrl->redirectByClass(
"ilrepositorygui",
"");
1014 $this->tabs_gui->addTab(
1016 $this->lng->txt(
"content"),
1017 $this->ctrl->getLinkTarget($this,
"view")
1027 $ilHelp->setScreenIdComponent(
"grp");
1029 if ($ilAccess->checkAccess(
'read',
'', $this->ref_id)) {
1030 if ($this->object->isNewsTimelineEffective()) {
1031 if (!$this->object->isNewsTimelineLandingPageEffective()) {
1034 $this->tabs_gui->addTab(
1036 $lng->txt(
"cont_news_timeline_tab"),
1037 $this->ctrl->getLinkTargetByClass(
"ilnewstimelinegui",
"show")
1039 if ($this->object->isNewsTimelineLandingPageEffective()) {
1047 $ilAccess->checkAccess(
'visible',
'', $this->ref_id) ||
1048 $ilAccess->checkAccess(
'join',
'', $this->ref_id) ||
1049 $ilAccess->checkAccess(
'read',
'', $this->ref_id)
1051 $this->tabs_gui->addTarget(
1053 $this->ctrl->getLinkTargetByClass(
1054 array(
"ilobjgroupgui",
"ilinfoscreengui"),
1065 if ($ilAccess->checkAccess(
'write',
'', $this->object->getRefId())) {
1066 $this->tabs_gui->addTarget(
1068 $this->ctrl->getLinkTarget($this,
"edit"),
1069 array(
"edit",
"editMapSettings"),
1075 include_once
'./Modules/Group/classes/class.ilGroupParticipants.php';
1079 include_once
'./Modules/Group/classes/class.ilGroupMembershipGUI.php';
1081 $membership_gui->addMemberTab($this->tabs_gui, $is_participant);
1085 if ($ilAccess->checkAccess(
'write',
'', $this->ref_id)) {
1086 include_once
'Services/Badge/classes/class.ilBadgeHandler.php';
1088 $this->tabs_gui->addTarget(
1089 "obj_tool_setting_badges",
1090 $this->ctrl->getLinkTargetByClass(
"ilbadgemanagementgui",
""),
1092 "ilbadgemanagementgui"
1098 include_once(
"./Services/Object/classes/class.ilObjectServiceSettingsGUI.php");
1100 $this->object->getId(),
1104 $this->tabs_gui->addTarget(
1105 "obj_tool_setting_skills",
1106 $this->ctrl->getLinkTargetByClass(array(
"ilcontainerskillgui",
"ilcontskillpresentationgui"),
""),
1108 array(
"ilcontainerskillgui",
"ilcontskillpresentationgui",
"ilcontskilladmingui")
1113 include_once
'./Services/Tracking/classes/class.ilLearningProgressAccess.php';
1115 $this->tabs_gui->addTarget(
1116 'learning_progress',
1117 $this->ctrl->getLinkTargetByClass(array(
'ilobjgroupgui',
'illearningprogressgui'),
''),
1119 array(
'illplistofobjectsgui',
'illplistofsettingsgui',
'illearningprogressgui',
'illplistofprogressgui')
1124 if ($ilAccess->checkAccess(
'write',
'', $this->object->getRefId())) {
1125 $this->tabs_gui->addTarget(
1127 $this->ctrl->getLinkTargetByClass(
'ilexportgui',
''),
1136 if ($ilAccess->checkAccess(
'join',
'', $this->object->getRefId()) and
1137 !$this->object->members_obj->isAssigned(
$ilUser->getId())) {
1138 include_once
'./Modules/Group/classes/class.ilGroupWaitingList.php';
1140 $this->tabs_gui->addTab(
1142 $this->lng->txt(
'membership_leave'),
1143 $this->ctrl->getLinkTargetByClass(
'ilgroupregistrationgui',
'show',
'')
1146 $this->tabs_gui->addTarget(
1148 $this->ctrl->getLinkTargetByClass(
'ilgroupregistrationgui',
"show"),
1154 if ($ilAccess->checkAccess(
'leave',
'', $this->object->getRefId()) and
1155 $this->object->members_obj->isMember(
$ilUser->getId())) {
1156 $this->tabs_gui->addTarget(
1157 "grp_btn_unsubscribe",
1158 $this->ctrl->getLinkTarget($this,
"leave"),
1172 $this->ctrl->setCmd(
"showSummary");
1173 $this->ctrl->setCmdClass(
"ilinfoscreengui");
1184 $this->tabs_gui->setTabActive(
'info_short');
1190 include_once(
"./Services/InfoScreen/classes/class.ilInfoScreenGUI.php");
1193 if (strlen($this->object->getInformation())) {
1194 $info->addSection($this->lng->txt(
'grp_general_informations'));
1195 $info->addProperty($this->lng->txt(
'grp_information'), nl2br(
1200 $info->enablePrivateNotes();
1201 $info->enableLearningProgress(
true);
1203 $info->addSection($this->lng->txt(
'group_registration'));
1204 $info->showLDAPRoleGroupMappingInfo();
1206 if (!$this->object->isRegistrationEnabled()) {
1208 $this->lng->txt(
'group_registration_mode'),
1209 $this->lng->txt(
'grp_reg_deac_info_screen')
1212 switch ($this->object->getRegistrationType()) {
1215 $this->lng->txt(
'group_registration_mode'),
1216 $this->lng->txt(
'grp_reg_direct_info_screen')
1222 $this->lng->txt(
'group_registration_mode'),
1223 $this->lng->txt(
'grp_reg_req_info_screen')
1229 $this->lng->txt(
'group_registration_mode'),
1230 $this->lng->txt(
'grp_reg_passwd_info_screen')
1241 if ($this->object->isRegistrationUnlimited()) {
1243 $this->lng->txt(
'group_registration_time'),
1244 $this->lng->txt(
'grp_registration_unlimited')
1246 } elseif ($this->object->getRegistrationStart()->getUnixTime() < time()) {
1248 $this->lng->txt(
"group_registration_time"),
1249 $this->lng->txt(
'cal_until') .
' ' .
1252 } elseif ($this->object->getRegistrationStart()->getUnixTime() >= time()) {
1254 $this->lng->txt(
"group_registration_time"),
1255 $this->lng->txt(
'cal_from') .
' ' .
1259 if ($this->object->isMembershipLimited()) {
1260 if ($this->object->getMinMembers()) {
1262 $this->lng->txt(
"mem_min_users"),
1263 $this->object->getMinMembers()
1266 if ($this->object->getMaxMembers()) {
1267 include_once
'./Modules/Group/classes/class.ilObjGroupAccess.php';
1271 $this->lng->txt(
'mem_free_places'),
1272 $reg_info[
'reg_info_free_places']
1277 if ($this->object->getCancellationEnd()) {
1279 $this->lng->txt(
'grp_cancellation_end'),
1285 if ($this->object->getStart()) {
1287 $this->lng->txt(
'grp_period'),
1289 $this->object->getStart(),
1290 $this->object->getEnd()
1297 include_once(
'Services/PrivacySecurity/classes/class.ilPrivacySettings.php');
1300 include_once(
'Modules/Course/classes/Export/class.ilCourseDefinedFieldDefinition.php');
1302 include_once(
'Services/PrivacySecurity/classes/class.ilExportFieldsInfo.php');
1306 $this->lng->loadLanguageModule(
'ps');
1307 $info->addSection($this->lng->txt(
'grp_user_agreement_info'));
1308 $info->addProperty($this->lng->txt(
'ps_export_data'), $field_info->exportableFieldsToInfoString());
1311 $info->addProperty($this->lng->txt(
'ps_grp_user_fields'), $fields);
1317 $this->ctrl->forwardCommand(
$info);
1325 include_once
"Services/Membership/classes/class.ilMembershipNotifications.php";
1327 if ($noti->canCurrentUserEdit()) {
1328 if ((
bool) $_REQUEST[
"grp_ntf"]) {
1329 $noti->activateUser();
1331 $noti->deactivateUser();
1335 $this->ctrl->redirect($this,
"infoScreen");
1343 $GLOBALS[
'ilCtrl']->redirectByClass(
'ilgroupmembershipgui');
1350 public static function _goto($a_target, $a_add =
"")
1354 include_once
'./Services/Membership/classes/class.ilMembershipRegistrationCodeUtils.php';
1355 if (substr($a_add, 0, 5) ==
'rcode') {
1356 if (
$ilUser->getId() == ANONYMOUS_USER_ID) {
1359 "login.php?target=" .
$_GET[
"target"] .
"&cmd=force_login&lang=" .
1372 if ($a_add ==
"mem" && $ilAccess->checkAccess(
"manage_members",
"", $a_target)) {
1376 if ($ilAccess->checkAccess(
"read",
"", $a_target)) {
1380 if ($ilAccess->checkAccess(
"visible",
"", $a_target)) {
1383 if ($ilAccess->checkAccess(
"read",
"", ROOT_FOLDER_ID)) {
1385 $lng->txt(
"msg_no_perm_read_item"),
1403 public function initForm($a_mode =
'edit', $a_omit_form_action =
false)
1407 include_once(
"./Services/Form/classes/class.ilPropertyFormGUI.php");
1411 if (!$a_omit_form_action) {
1414 $form->setFormAction($this->ctrl->getFormAction($this,
'update'));
1418 $form->setTableWidth(
'600px');
1419 $form->setFormAction($this->ctrl->getFormAction($this,
'save'));
1426 $title->setSubmitFormOnEnter(
true);
1427 if ($a_mode ==
"edit") {
1428 $title->setValue($this->object->getTitle());
1432 $title->setRequired(
true);
1437 if ($a_mode ==
"edit") {
1438 $desc->setValue($this->object->getLongDescription());
1442 $form->addItem($desc);
1446 if ($a_mode ==
'edit') {
1448 include_once
'Services/Form/classes/class.ilDateDurationInputGUI.php';
1450 $group_duration->setInfo($this->lng->txt(
'grp_period_info'));
1451 if ($this->object->getStart()) {
1452 $group_duration->setStart($this->object->getStart());
1454 if ($this->object->getEnd()) {
1455 $group_duration->setEnd($this->object->getEnd());
1457 $form->addItem($group_duration);
1461 $pres->setTitle($this->lng->txt(
'grp_setting_header_registration'));
1462 $form->addItem($pres);
1465 $reg_type =
new ilRadioGroupInputGUI($this->lng->txt(
'group_registration_mode'),
'registration_type');
1466 $reg_type->setValue($this->object->getRegistrationType());
1469 $reg_type->addOption($opt_dir);
1473 $pass->setRequired(
true);
1474 $pass->setInfo($this->lng->txt(
'grp_reg_password_info'));
1475 $pass->setValue($this->object->getPassword());
1477 $pass->setMaxLength(32);
1478 $opt_pass->addSubItem(
$pass);
1479 $reg_type->addOption($opt_pass);
1482 $reg_type->addOption($opt_req);
1485 $reg_type->addOption($opt_deact);
1488 $reg_code =
new ilCheckboxInputGUI($this->lng->txt(
'grp_reg_code'),
'reg_code_enabled');
1489 $reg_code->setChecked($this->object->isRegistrationAccessCodeEnabled());
1490 $reg_code->setValue(1);
1491 $reg_code->setInfo($this->lng->txt(
'grp_reg_code_enabled_info'));
1492 $form->addItem($reg_type);
1495 if (!$this->object->getRegistrationAccessCode()) {
1496 include_once
'./Services/Membership/classes/class.ilMembershipRegistrationCodeUtils.php';
1500 $reg_link->setValue($this->object->getRegistrationAccessCode());
1501 $form->addItem($reg_link);
1504 include_once
'./Services/Link/classes/class.ilLink.php';
1505 $val =
ilLink::_getLink($this->object->getRefId(), $this->object->getType(), array(),
'_rcode' . $this->object->getRegistrationAccessCode());
1506 $link->setHTML(
'<font class="small">' . $val .
'</font>');
1507 $reg_code->addSubItem($link);
1508 $form->addItem($reg_code);
1511 $this->lng->loadLanguageModule(
'dateplaner');
1512 include_once
'./Services/Form/classes/class.ilDateDurationInputGUI.php';
1514 $dur->setShowTime(
true);
1515 $dur->setStart($this->object->getRegistrationStart());
1516 $dur->setEnd($this->object->getRegistrationEnd());
1517 $form->addItem($dur);
1520 $cancel =
new ilDateTimeInputGUI($this->lng->txt(
'grp_cancellation_end'),
'cancel_end');
1521 $cancel->setInfo($this->lng->txt(
'grp_cancellation_end_info'));
1522 $cancel->setDate($this->object->getCancellationEnd());
1523 $form->addItem($cancel);
1526 $lim =
new ilCheckboxInputGUI($this->lng->txt(
'reg_grp_max_members_short'),
'registration_membership_limited');
1529 $lim->setChecked($this->object->isMembershipLimited());
1531 $min =
new ilTextInputGUI($this->lng->txt(
'reg_grp_min_members'),
'registration_min_members');
1533 $min->setMaxLength(4);
1534 $min->setValue($this->object->getMinMembers() ? $this->object->getMinMembers() :
'');
1535 $min->setInfo($this->lng->txt(
'grp_subscription_min_members_info'));
1536 $lim->addSubItem($min);
1538 $max =
new ilTextInputGUI($this->lng->txt(
'reg_grp_max_members'),
'registration_max_members');
1539 $max->setValue($this->object->getMaxMembers() ? $this->object->getMaxMembers() :
'');
1542 $max->setMaxLength(4);
1543 $max->setInfo($this->lng->txt(
'grp_reg_max_members_info'));
1544 $lim->addSubItem($max);
1559 $wait->addOption($option);
1561 $option =
new ilRadioOption($this->lng->txt(
'grp_waiting_list_no_autofill'), 1);
1562 $option->setInfo($this->lng->txt(
'grp_waiting_list_info'));
1563 $wait->addOption($option);
1565 $option =
new ilRadioOption($this->lng->txt(
'grp_waiting_list_autofill'), 2);
1566 $option->setInfo($this->lng->txt(
'grp_waiting_list_autofill_info'));
1567 $wait->addOption($option);
1569 if ($this->object->hasWaitingListAutoFill()) {
1571 } elseif ($this->object->isWaitingListEnabled()) {
1575 $lim->addSubItem($wait);
1577 $form->addItem($lim);
1581 $hasParentMembership =
1583 $tree->checkForParentType($this->object->getRefId(),
'crs',
true) ||
1584 $tree->checkForParentType($this->object->getRefId(),
'grp',
true)
1588 $pres->setTitle($this->lng->txt(
'grp_setting_header_presentation'));
1589 $form->addItem($pres);
1593 if ($hasParentMembership) {
1594 switch ($this->object->getViewMode()) {
1596 $course_view_mode =
': ' . $this->lng->txt(
'cntr_view_sessions');
1600 $course_view_mode =
': ' . $this->lng->txt(
'cntr_view_simple');
1604 $course_view_mode =
': ' . $this->lng->txt(
'cntr_view_by_type');
1609 $opt->setInfo($this->lng->txt(
'grp_view_inherit_info'));
1610 $view_type->addOption($opt);
1613 if ($hasParentMembership &&
1617 $view_type->setValue(
1619 $this->object->getId(),
1620 $this->object->getViewMode(),
1621 $this->object->getRefId()
1627 $opt->setInfo($this->lng->txt(
'grp_view_info_simple'));
1628 $view_type->addOption($opt);
1631 $opt->setInfo($this->lng->txt(
'grp_view_info_by_type'));
1632 $view_type->addOption($opt);
1633 $form->addItem($view_type);
1637 $sorting_settings = array();
1638 if ($hasParentMembership) {
1648 $feat->setTitle($this->lng->txt(
'obj_features'));
1649 $form->addItem($feat);
1651 include_once
'./Services/Object/classes/class.ilObjectServiceSettingsGUI.php';
1653 $this->object->getId(),
1672 $mem->setChecked($this->object->getShowMembers());
1673 $mem->setInfo($this->lng->txt(
'grp_show_members_info'));
1674 $form->addItem($mem);
1678 $mail_type->setValue($this->object->getMailToMembersType());
1681 $this->lng->txt(
'grp_mail_tutors_only'),
1683 $this->lng->txt(
'grp_mail_tutors_only_info')
1685 $mail_type->addOption($mail_tutors);
1688 $this->lng->txt(
'grp_mail_all'),
1690 $this->lng->txt(
'grp_mail_all_info')
1692 $mail_type->addOption($mail_all);
1693 $form->addItem($mail_type);
1698 $form->setTitle($this->lng->txt(
'grp_new'));
1701 $form->addCommandButton(
'save', $this->lng->txt(
'grp_new'));
1702 $form->addCommandButton(
'cancel', $this->lng->txt(
'cancel'));
1706 $form->setTitle($this->lng->txt(
'grp_edit'));
1710 include_once
'Modules/Group/classes/class.ilECSGroupSettings.php';
1712 $ecs->addSettingsToForm(
$form,
'grp');
1714 $form->addCommandButton(
'update', $this->lng->txt(
'save'));
1715 $form->addCommandButton(
'cancel', $this->lng->txt(
'cancel'));
1735 $this->tabs_gui->addSubTabTarget(
1737 $this->ctrl->getLinkTarget($this,
'edit'),
1742 $this->tabs_gui->addSubTabTarget(
1743 "grp_info_settings",
1744 $this->ctrl->getLinkTarget($this,
'editInfo'),
1750 if ($this->
ilias->getSetting(
"custom_icons")) {
1751 $this->tabs_gui->addSubTabTarget(
1752 "grp_icon_settings",
1753 $this->ctrl->getLinkTarget($this,
'editGroupIcons'),
1759 include_once(
"./Services/Maps/classes/class.ilMapUtil.php");
1761 $this->tabs_gui->addSubTabTarget(
1763 $this->ctrl->getLinkTarget($this,
'editMapSettings'),
1769 $this->tabs_gui->addSubTabTarget(
1771 $this->ctrl->getLinkTargetByClass(
'ilobjcoursegroupinggui',
'listGroupings'),
1776 include_once(
'Services/PrivacySecurity/classes/class.ilPrivacySettings.php');
1777 include_once(
'Modules/Course/classes/Export/class.ilCourseDefinedFieldDefinition.php');
1780 $this->tabs_gui->addSubTabTarget(
1781 'grp_custom_user_fields',
1782 $this->ctrl->getLinkTargetByClass(
'ilobjectcustomuserfieldsgui'),
1784 'ilobjectcustomuserfieldsgui'
1789 if ($this->object->getUseNews()) {
1790 $this->tabs_gui->addSubTab(
1791 'obj_news_settings',
1792 $this->lng->txt(
"cont_news_settings"),
1793 $this->ctrl->getLinkTargetByClass(
'ilcontainernewssettingsgui')
1798 if ($lti_settings->hasSettingsAccess()) {
1799 $this->tabs_gui->addSubTabTarget(
1801 $this->ctrl->getLinkTargetByClass(ilLTIProviderObjectSettingGUI::class)
1822 if ($ilAccess->checkAccess(
'write',
'', $this->object->getRefId())) {
1827 if (!$this->object->members_obj->isAssigned(
$ilUser->getId())) {
1831 include_once
'./Services/Container/classes/class.ilMemberViewSettings.php';
1836 include_once(
'Services/PrivacySecurity/classes/class.ilPrivacySettings.php');
1837 include_once(
'Services/Membership/classes/class.ilMemberAgreement.php');
1846 include_once(
'Modules/Course/classes/Export/class.ilCourseUserData.php');
1872 parent::prepareOutput($a_show_subobjects);
1881 $link = chr(13) . chr(10) . chr(13) . chr(10);
1882 $link .= $this->lng->txt(
'grp_mail_permanent_link');
1883 $link .= chr(13) . chr(10) . chr(13) . chr(10);
1884 include_once
'Services/Link/classes/class.ilLink.php';
1886 return rawurlencode(base64_encode($link));
1893 $lg = parent::initHeaderAction($a_sub_type, $a_sub_id);
1895 include_once(
'./Modules/Group/classes/class.ilGroupParticipants.php');
1897 include_once
"Services/Membership/classes/class.ilMembershipNotifications.php";
1900 if (!$noti->isCurrentUserActive()) {
1904 $this->lng->txt(
"grp_notification_deactivated")
1907 $this->ctrl->setParameter($this,
"grp_ntf", 1);
1908 $caption =
"grp_activate_notification";
1913 $this->lng->txt(
"grp_notification_activated")
1916 $this->ctrl->setParameter($this,
"grp_ntf", 0);
1917 $caption =
"grp_deactivate_notification";
1920 if ($noti->canCurrentUserEdit()) {
1921 $lg->addCustomCommand(
1922 $this->ctrl->getLinkTarget($this,
"saveNotification"),
1927 $this->ctrl->setParameter($this,
"grp_ntf",
"");
1942 include_once(
'Modules/Course/classes/Export/class.ilCourseUserData.php');
1945 $res_data = array();
1946 foreach ($a_data as $usr_id => $user_data) {
1947 $res_data[$usr_id] = $user_data;
1950 include_once
'./Services/User/classes/class.ilUserDefinedData.php';
1952 foreach ($udf_data->getAll() as $field => $value) {
1953 list($f, $field_id) = explode(
'_', $field);
1954 $res_data[$usr_id][
'udf_' . $field_id] = (string) $value;
1957 foreach ((array) $odfs[$usr_id] as $cdf_field => $cdf_value) {
1958 $res_data[$usr_id][
'cdf_' . $cdf_field] = (string) $cdf_value;
1971 $local_roles = $this->
object->getLocalGroupRoles(
false);
1972 $grp_member = $this->
object->getDefaultMemberRole();
1973 $grp_roles = array();
1976 if (in_array($grp_member, $local_roles)) {
1978 unset($local_roles[$grp_roles[$grp_member]]);
1981 foreach ($local_roles as
$title => $role_id) {
1992 $this->ctrl->redirectByClass(
'ilUsersGalleryGUI');
2000 $this->ctrl->setReturn($this,
"view");
sprintf('%.4f', $callTime)
An exception for terminatinating execution or to throw for unit testing.
const GRP_REGISTRATION_DIRECT
const GRP_REGISTRATION_PASSWORD
const GRP_REGISTRATION_DEACTIVATED
const GRP_REGISTRATION_REQUEST
static getInstance()
Constructor.
static _catchupWriteEvents($obj_id, $usr_id, $timestamp=null)
Catches up with all write events which occured before the specified timestamp.
static _recordWriteEvent($obj_id, $usr_id, $action, $parent_obj_id=null)
Records a write event.
static getInstanceFromAjaxCall()
(Re-)Build instance from ajax call
Confirmation screen class.
& forwardToPageObject()
forward command to page object
initSortingForm(ilPropertyFormGUI $form, array $a_sorting_settings)
Append sorting settings to property form.
showPermanentLink(&$tpl)
show permanent link
forwardToStyleSheet()
Forward to style object.
showCustomIconsEditing($a_input_colspan=1, ilPropertyFormGUI $a_form=null, $a_as_section=true)
show edit section of custom icons for container
saveSortingSettings(ilPropertyFormGUI $form)
Save sorting settings.
News settings for containers.
Skills for container (course/group) (top gui class)
static _lookupContainerSetting($a_id, $a_keyword, $a_default_value=null)
Lookup a container setting.
Class ilCourseContentGUI.
static _getFields($a_container_id, $a_sort=IL_CDF_SORT_NAME)
Get all fields of a container.
static _hasFields($a_container_id)
Check if there are any define fields.
static _fieldsToInfoString($a_obj_id)
Fields to info string.
static _getInstanceByObjId($a_obj_id)
Get singleton instance.
static _getValuesByObjId($a_obj_id)
Get values by obj_id (for all users)
static _checkRequired($a_usr_id, $a_obj_id)
Check required fields.
static formatDate(ilDateTime $date, $a_skip_day=false, $a_include_wd=false)
Format a date @access public.
static formatPeriod(ilDateTime $start, ilDateTime $end, $a_skip_starting_day=false)
Format a period of two date Shows: 14.
@classDescription Date and time handling
static lookupTemplateId($a_ref_id)
Lookup template id @global ilDB $ilDB.
static switchTemplate($a_ref_id, $a_new_tpl_id)
Class ilECSGroupSettings.
static _getInstanceByType($a_type)
Get Singleton Instance.
Export User Interface Class.
GUI class for membership features.
const TYPE_UNSUBSCRIBE_MEMBER
const TYPE_NOTIFICATION_UNSUBSCRIBE
static _getInstanceByObjId($a_obj_id)
Get singleton instance.
static _isParticipant($a_ref_id, $a_usr_id)
Static function to check if a user is a participant of the container object.
GUI class for group registrations.
static _lookupCompletedForObject($a_obj_id, $a_user_ids=null)
Get completed users for object.
static _lookupFailedForObject($a_obj_id, $a_user_ids=null)
Get failed users for object.
static _lookupInProgressForObject($a_obj_id, $a_user_ids=null)
Get in progress users for object.
const LP_STATUS_COMPLETED
const LP_STATUS_NOT_ATTEMPTED
const LP_STATUS_IN_PROGRESS
GUI class for LTI provider object settings.
static checkAccess($a_ref_id, $a_allow_only_read=true)
check access to learning progress
const LP_CONTEXT_REPOSITORY
Class ilObjUserTrackingGUI.
static _tracProgress($a_user_id, $a_obj_id, $a_ref_id, $a_obj_type='')
static _lookupProgressByObjId($a_obj_id)
lookup progress for a specific object
static _getLink($a_ref_id, $a_type='', $a_params=array(), $append="")
static getLogger($a_component_id)
Get component logger.
Class ilMailMemberCourseRoles.
Class ilMailMemberSearchGUI.
This class handles base functions for mail handling.
static isActivated()
Checks whether Map feature is activated.
static getDefaultSettings()
Get default longitude, latitude and zoom.
static _hasAccepted($a_usr_id, $a_obj_id)
Check if user has accepted agreement.
static getInstance()
Get instance.
Membership notification settings.
static isActive()
Is feature active?
static handleCode($a_ref_id, $a_type, $a_code)
Handle target parameter.
static generateCode()
Generate new registration key.
static getInstance($a_ref_id, $a_include_auto_entries)
Get instance.
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.
Class ilObjCourseGroupingGUI.
static _lookupAboStatus($a_id)
static lookupRegistrationInfo($a_obj_id)
Lookup registration info @global ilDB $ilDB @global ilObjUser $ilUser @global ilLanguage $lng.
saveNotificationObject()
:TEMP: Save notification setting (from infoscreen)
initInfoEditor()
init info editor
initForm($a_mode='edit', $a_omit_form_action=false)
init create/edit form
membersObject()
Called from goto?
jump2UsersGalleryObject()
prepareOutput($a_show_subobjects=true)
Handle member view.
renderObject()
Render group.
infoScreen()
show information screen
updateObject()
update group settings
getTabs()
common tabs for all container objects (should be called at the end of child getTabs() method
checkAgreement()
Check agreement and redirect if it is not accepted.
editInfoObject()
edit info
__construct($a_data, $a_id, $a_call_by_reference, $a_prepare_output=false)
Constructor @access public.
editGroupIconsObject($a_form=null)
edit container icons
infoScreenObject()
this one is called from the info button in the repository not very nice to set cmdClass/Cmd manually,...
editMapSettingsObject()
Edit Map Settings.
modifyItemGUI($a_item_list_gui, $a_item_data, $a_show_path)
Modify Item ListGUI for presentation in container @global type $tree.
createMailSignature()
Create a course mail signature.
addContentTab()
Add content tab.
setSubTabs($a_tab)
set sub tabs
afterSave(\ilObject $new_object, $a_redirect=true)
After object creation.
unsubscribeObject()
unsubscribe from group
updateGroupIconsObject()
update group icons
readMemberData($ids, $selected_columns=null)
updateGroupTypeObject()
change group type
static _goto($a_target, $a_add="")
goto target group
editObject(ilPropertyFormGUI $a_form=null)
Edit object.
viewObject()
list childs of current object
setSideColumnReturn()
Set return point for side column actions.
getLocalRoles()
returns all local roles [role_id] => title
leaveObject()
leave Group @access public
initHeaderAction($a_sub_type=null, $a_sub_id=null)
Add file manager link.
executeCommand()
execute command note: this method is overwritten in all container objects
updateInfoObject()
update info
const MAIL_ALLOWED_TUTORS
static translateViewMode($a_obj_id, $a_view_mode, $a_ref_id=null)
translate view mode
static getAvailablePortfolioLinksForUserIds(array $a_owner_ids, $a_back_url=null)
static _getTranslation($a_role_title)
static getContentStylePath($a_style_id, $add_random=true)
get content style path
static _enabledLearningProgress()
check wether learing progress is enabled or not
static _enabledUserRelatedData()
check wether user related tracking is enabled or not
static _lookupLogin($a_user_id)
lookup login
static _lookupName($a_user_id)
lookup user name
static _readUsersProfileData($a_user_ids)
STATIC METHOD get user data of selected users.
GUI class for the workflow of copying objects.
checkPermission($a_perm, $a_cmd="", $a_type="", $a_ref_id=null)
Check permission and redirect on error.
static _gotoRepositoryNode($a_ref_id, $a_cmd="frameset")
Goto repository root.
static _gotoRepositoryRoot($a_raise_error=false)
Goto repository root.
getCreationMode()
get creation mode
checkPermissionBool($a_perm, $a_cmd="", $a_type="", $a_ref_id=null)
Check permission.
initDidacticTemplate(ilPropertyFormGUI $form)
Show didactic template types.
addHeaderAction()
Add header action menu.
static getInstance($a_obj_id)
GUI class for service settings (calendar, notes, comments)
const AUTO_RATING_NEW_OBJECTS
const ORGU_POSITION_ACCESS
static initServiceSettingsForm($a_obj_id, ilPropertyFormGUI $form, $services)
Init service settings form.
static updateServiceSettingsForm($a_obj_id, ilPropertyFormGUI $form, $services)
Update service settings.
const CALENDAR_VISIBILITY
Class ilObject Basic functions for all objects.
static _lookupObjId($a_id)
const TITLE_LENGTH
max length of object title
update()
update object in db
static _lookupTitle($a_id)
lookup object title
getRefId()
get reference id @access public
getId()
get object id @access public
static _lookupType($a_id, $a_reference=false)
lookup object type
New PermissionGUI (extends from old ilPermission2GUI) RBAC related output.
static _getInstance()
Get instance of ilPrivacySettings.
GUI class for public user profile presentation.
This class represents an option in a radio group.
This class represents a text area property in a property form.
This class represents a text property in a property form.
static sendQuestion($a_info="", $a_keep=false)
Send Question to Screen.
static sendSuccess($a_info="", $a_keep=false)
Send Success Message to Screen.
static redirect($a_script)
static sendFailure($a_info="", $a_keep=false)
Send Failure Message to Screen.
static makeClickable($a_text, $detectGotoLinks=false)
makeClickable In Texten enthaltene URLs und Mail-Adressen klickbar machen
static stripSlashes($a_str, $a_strip_html=true, $a_allow="")
strip slashes if magic qoutes is enabled
static getImagePath($img, $module_path="", $mode="output", $offline=false)
get image path (for images located in a template directory)
static _isOnList($a_usr_id, $a_obj_id)
Check if a user on the waiting list.
$GLOBALS['loaded']
Global hash that tracks already loaded includes.
redirection script todo: (a better solution should control the processing via a xml file)
if(isset($_POST['submit'])) $form