* * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License as * published by the Free Software Foundation; either version 2 of * the License, or (at your option) any later version. */ class CoreStudygroupParticipants extends CorePlugin implements StudipModule { /** * {@inheritdoc} */ public function getIconNavigation(string $course_id, int $last_visit, string $user_id): ?Navigation { $navigation = new Navigation(_('Teilnehmende'), "dispatch.php/course/studygroup/members/{$course_id}"); $navigation->setImage(Icon::create('persons', Icon::ROLE_CLICKABLE)); if ($last_visit && CourseMember::countBySQL("seminar_id = :course_id AND mkdate >= :last_visit", ['last_visit' => $last_visit, 'course_id' => $course_id]) > 0) { $navigation->setImage(Icon::create('persons', Icon::ROLE_ATTENTION)); } return $navigation; } /** * {@inheritdoc} */ public function getTabNavigation(string $course_id): array { $navigation = new Navigation(_('Teilnehmende'), "dispatch.php/course/studygroup/members/".$course_id); $navigation->setImage(Icon::create('persons', Icon::ROLE_INFO_ALT)); $navigation->setActiveImage(Icon::create('persons', Icon::ROLE_INFO)); return ['members' => $navigation]; } /** * {@inheritdoc} */ public function getMetadata(): array { return [ 'summary' => _('Liste aller Teilnehmenden einschließlich Nachrichtenfunktionen'), 'category' => _('Lehr- und Lernorganisation'), 'icon' => Icon::create('persons', Icon::ROLE_INFO), 'displayname' => _('Teilnehmende'), ]; } public function getInfoTemplate($course_id): ?Flexi_Template { // TODO: Implement getInfoTemplate() method. return null; } public function isActivatableForContext(Range $context) { return false; } }