From 6924a185b2bb498c43bf620066216440ffcff9a8 Mon Sep 17 00:00:00 2001 From: Peter Thienel <thienel@data-quest.de> Date: Wed, 29 May 2024 15:35:25 +0000 Subject: [PATCH] =?UTF-8?q?Resolve=20"Externe=20Seiten:=20Die=20Sichbarkei?= =?UTF-8?q?t=20von=20Veranstaltungen=20wird=20an=20weiteren=20Stellen=20ni?= =?UTF-8?q?cht=20ber=C3=BCcksichtigt"?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Closes #4231 Merge request studip/studip!3063 (cherry picked from commit b506b133d371742ef23b3a22cc1c6bb20c860d40) b59bf23b use and show only visible courses, fixes #4231 --- lib/extern/ExternPagePersBrowse.php | 3 ++- lib/extern/ExternPagePersonDetails.php | 3 ++- lib/extern/ExternPageTimetable.php | 6 +++++- 3 files changed, 9 insertions(+), 3 deletions(-) diff --git a/lib/extern/ExternPagePersBrowse.php b/lib/extern/ExternPagePersBrowse.php index 270e99124cd..d55717376cd 100644 --- a/lib/extern/ExternPagePersBrowse.php +++ b/lib/extern/ExternPagePersBrowse.php @@ -32,7 +32,7 @@ class ExternPagePersBrowse extends ExternPage /** * @see ExternPage::getDataFields() - + * @param array $classes * @return array */ @@ -343,6 +343,7 @@ class ExternPagePersBrowse extends ExternPage LEFT JOIN auth_user_md5 aum ON su.user_id = aum.user_id WHERE ui.Institut_id = ? AND su.status = 'dozent' + AND s.visible = 1 AND ui.externdefault = 1 AND " . get_ext_vis_query() . " AND ui.inst_perms = 'dozent' diff --git a/lib/extern/ExternPagePersonDetails.php b/lib/extern/ExternPagePersonDetails.php index 49c754c16a1..37d7436b785 100644 --- a/lib/extern/ExternPagePersonDetails.php +++ b/lib/extern/ExternPagePersonDetails.php @@ -146,7 +146,8 @@ class ExternPagePersonDetails extends ExternPage LEFT JOIN `seminar_user` USING(`seminar_id`) LEFT JOIN `sem_types` ON `sem_types`.`id` = `seminare`.`status` - WHERE `semester_courses`.`semester_id` IN (:semester_ids) OR ISNULL(`semester_id`) + WHERE `seminare`.`visible` = 1 + AND `semester_courses`.`semester_id` IN (:semester_ids) OR ISNULL(`semester_id`) AND `seminar_user`.`user_id` = :user_id AND `seminar_user`.`status` = 'dozent' AND `sem_types`.`class` IN (:semclasses)"; diff --git a/lib/extern/ExternPageTimetable.php b/lib/extern/ExternPageTimetable.php index 45c40c85a95..b301a47cdbd 100644 --- a/lib/extern/ExternPageTimetable.php +++ b/lib/extern/ExternPageTimetable.php @@ -119,7 +119,11 @@ class ExternPageTimetable extends ExternPage LEFT JOIN `seminar_inst` ON `seminare`.`Seminar_id` = `seminar_inst`.`Seminar_id`"; $query .= " - WHERE (`termine`.`date` >= :start AND `termine`.`date` <= :end) " + WHERE ( + `seminare`.`visible` = 1 + AND termine`.`date` >= :start + AND `termine`.`date` <= :end + )" . $this->getEventTypeSQL($params) . $this->getScopesSQL($params, $this->studyareas, (bool) $this->scope_kids) . $this->getInstitutesSQL($params) -- GitLab