45 $this->main_tpl = $DIC->ui()->mainTemplate();
47 $this->
access = ilMyStaffAccess::getInstance();
49 $this->usr_id = $DIC->http()->request()->getQueryParams()[
'usr_id'];
50 $DIC->ctrl()->setParameter($this,
'usr_id', $this->usr_id);
66 $this->main_tpl->setOnScreenMessage(
'failure', $DIC->language()->txt(
"permission_denied"),
true);
67 $DIC->ctrl()->redirectByClass(ilDashboardGUI::class,
"");
70 if ($this->
access->hasCurrentUserAccessToUser($this->usr_id)) {
73 $this->main_tpl->setOnScreenMessage(
'failure', $DIC->language()->txt(
"permission_denied"),
true);
74 $DIC->ctrl()->redirectByClass(ilDashboardGUI::class,
"");
84 $cmd = $DIC->ctrl()->getCmd();
85 $next_class = $DIC->ctrl()->getNextClass();
87 switch ($next_class) {
88 case strtolower(ilMStShowUserCoursesGUI::class):
89 $this->
addTabs(self::TAB_SHOW_COURSES);
91 $DIC->ctrl()->forwardCommand($gui);
93 case strtolower(ilUserCertificateGUI::class):
94 $this->
addTabs(self::TAB_SHOW_CERTIFICATES);
101 $DIC->ctrl()->forwardCommand($gui);
104 case strtolower(ilMStShowUserCompetencesGUI::class):
105 $this->
addTabs(self::TAB_SHOW_COMPETENCES);
107 $DIC->ctrl()->forwardCommand($gui);
109 case strtolower(ilEmployeeTalkMyStaffUserGUI::class):
110 $this->
addTabs(self::TAB_SHOW_TALKS);
112 $DIC->ctrl()->forwardCommand($gui);
117 case self::CMD_SHOW_USER:
118 $this->
addTabs(self::TAB_SHOW_USER);
131 $DIC->ctrl()->redirectByClass(ilMStShowUserCoursesGUI::class);
140 if (!$user->hasPublicProfile()) {
141 $DIC->ctrl()->redirectByClass(self::class, self::CMD_INDEX);
145 $DIC->ui()->mainTemplate()->setContent($pub_profile->getEmbeddable());
152 $DIC->ctrl()->redirect($this);
155 protected function addTabs(
string $active_tab_id): void
159 $DIC->tabs()->setBackTarget($DIC->language()->txt(
'mst_list_users'), $DIC->ctrl()->getLinkTargetByClass(array(
161 ilMStListUsersGUI::class,
164 if ($this->
access->hasCurrentUserAccessToCourseMemberships()) {
165 $DIC->tabs()->addTab(
166 self::TAB_SHOW_COURSES,
167 $DIC->language()->txt(
'mst_list_courses'),
168 $DIC->ctrl()->getLinkTargetByClass(array(
171 ilMStShowUserCoursesGUI::class,
176 if ($this->
access->hasCurrentUserAccessToCertificates()) {
177 $DIC->tabs()->addTab(
178 self::TAB_SHOW_CERTIFICATES,
179 $DIC->language()->txt(
'mst_list_certificates'),
180 $DIC->ctrl()->getLinkTargetByClass(array(
183 ilUserCertificateGUI::class,
188 if ($this->
access->hasCurrentUserAccessToCompetences()) {
189 $DIC->tabs()->addTab(
190 self::TAB_SHOW_COMPETENCES,
191 $DIC->language()->txt(
'mst_list_competences'),
192 $DIC->ctrl()->getLinkTargetByClass(array(
195 ilMStShowUserCompetencesGUI::class,
201 if ($user->hasPublicProfile()) {
202 $DIC->ctrl()->setParameterByClass(self::class,
'usr_id', $this->usr_id);
203 $public_profile_url = $DIC->ctrl()->getLinkTargetByClass(self::class, self::CMD_SHOW_USER);
204 $DIC->tabs()->addTab(self::TAB_SHOW_USER, $DIC->language()->txt(
'public_profile'), $public_profile_url);
207 if ($this->
access->hasCurrentUserAccessToTalks()) {
208 $DIC->ctrl()->setParameterByClass(strtolower(self::class),
'usr_id', $this->usr_id);
209 $DIC->tabs()->addTab(self::TAB_SHOW_TALKS, $DIC->language()->txt(
'etal_talks'), $DIC->ctrl()->getLinkTargetByClass([
210 strtolower(ilMyStaffGUI::class),
211 strtolower(self::class),
212 strtolower(ilEmployeeTalkMyStaffUserGUI::class)
213 ], ControlFlowCommand::INDEX));
216 if ($active_tab_id) {
217 $DIC->tabs()->activateTab($active_tab_id);
ilUserCertificateGUI: ilAchievementsGUI
const string TAB_SHOW_TALKS
addTabs(string $active_tab_id)
const string TAB_SHOW_USER
while($session_entry=$r->fetchRow(ilDBConstants::FETCHMODE_ASSOC)) return null
GUI class for public user profile presentation.
const string TAB_SHOW_COMPETENCES
static getNamePresentation( $a_user_id, bool $a_user_image=false, bool $a_profile_link=false, string $a_profile_back_link='', bool $a_force_first_lastname=false, bool $a_omit_login=false, bool $a_sortable=true, bool $a_return_data_array=false, $a_ctrl_path='ilpublicuserprofilegui')
Default behaviour is:
const string CMD_SHOW_USER
const string TAB_SHOW_COURSES
const string TAB_SHOW_CERTIFICATES
static _getPersonalPicturePath(int $a_usr_id, string $a_size='small', bool $a_force_pic=false, bool $a_prevent_no_photo_image=false, bool $html_export=false)
ilGlobalTemplateInterface $main_tpl
Class ilMStShowUserCompetencesGUI.