diff options
| author | Philipp Schüttlöffel <schuettloeffel@zqs.uni-hannover.de> | 2024-09-24 10:53:31 +0200 |
|---|---|---|
| committer | Philipp Schüttlöffel <schuettloeffel@zqs.uni-hannover.de> | 2024-09-24 10:53:31 +0200 |
| commit | 4459dd7917f4d1c34f40bb68f0e991e9c3d53e4c (patch) | |
| tree | 5c07151ae61276d334e88f6309c30d439a85c12e /lib/extern | |
| parent | da0022e5c1abbf9825ae76debaabdff7e8623bb4 (diff) | |
| parent | 97a188592c679890a25c37ab78463add76a52ff7 (diff) | |
Merge branch 'main' into issue-3911issue-3911
Diffstat (limited to 'lib/extern')
| -rw-r--r-- | lib/extern/ExternPage.php | 9 | ||||
| -rw-r--r-- | lib/extern/ExternPageCourses.php | 6 | ||||
| -rw-r--r-- | lib/extern/ExternPagePersBrowse.php | 3 | ||||
| -rw-r--r-- | lib/extern/ExternPagePersonDetails.php | 5 | ||||
| -rw-r--r-- | lib/extern/ExternPageTimetable.php | 9 |
5 files changed, 20 insertions, 12 deletions
diff --git a/lib/extern/ExternPage.php b/lib/extern/ExternPage.php index 8ed0e96..d3c5ec2 100644 --- a/lib/extern/ExternPage.php +++ b/lib/extern/ExternPage.php @@ -13,8 +13,6 @@ * @since 5.4 */ -require_once 'vendor/exTpl/Template.php'; - abstract class ExternPage { /** @@ -112,7 +110,7 @@ abstract class ExternPage $page_name = 'ExternPage' . $config->type; if (!class_exists($page_name)) { // lookup plugins - $plugins = PluginEngine::getPlugins('ExternPagePlugin'); + $plugins = PluginEngine::getPlugins(ExternPagePlugin::class); foreach ($plugins as $plugin) { if ($config->type === $plugin->getExternPageName()) { return $plugin->getExternPage($config); @@ -138,7 +136,7 @@ abstract class ExternPage $extract[] = array_values(array_filter(array_map('trim', explode(' ', $one)))); } foreach ($extract as $one) { - $return[$one[0]] = $one[1]; + $return[$one[0]] = $one[1] ?? null; } return $return; } @@ -236,7 +234,7 @@ abstract class ExternPage $allowed_params = $this->getAllowedRequestParams(true); $config_fields = $this->getConfigFields(true); foreach ($allowed_params as $param_name) { - $method = $config_fields[$param_name] ?: 'get'; + $method = $config_fields[$param_name] ?? 'get'; $param_value = Request::$method($param_name); if ($param_value) { $this->setValue($param_name, $param_value); @@ -342,6 +340,7 @@ abstract class ExternPage ): string { if (count($scopes) > 0) { $study_areas = StudipStudyArea::findMany($scopes); + $scopes = []; if ($with_kids) { foreach ($study_areas as $study_area) { diff --git a/lib/extern/ExternPageCourses.php b/lib/extern/ExternPageCourses.php index 0e6b461..e1868c9 100644 --- a/lib/extern/ExternPageCourses.php +++ b/lib/extern/ExternPageCourses.php @@ -117,7 +117,8 @@ class ExternPageCourses extends ExternPage } $query .= " WHERE (`semester_courses`.`semester_id` IN (:semester_ids) OR ISNULL(`semester_id`)) - AND ISNULL(`seminare`.`parent_course`) " + AND ISNULL(`seminare`.`parent_course`) + AND `seminare`.`visible` = 1 " . $this->getScopesSQL($params, $this->studyareas, (bool) $this->scope_kids) . $this->getInstitutesSQL($params) . $this->getSemtypesSQL($params) @@ -304,7 +305,8 @@ class ExternPageCourses extends ExternPage } $query .= " WHERE (`semester_courses`.`semester_id` IN (:semester_ids) OR ISNULL(`semester_id`)) - AND ISNULL(`seminare`.`parent_course`) " + AND ISNULL(`seminare`.`parent_course`) + AND `seminare`.`visible` = 1 " . $this->getScopesSQL($params, $this->studyareas, (bool) $this->scope_kids) . $this->getInstitutesSQL($params) . $this->getSemtypesSQL($params) diff --git a/lib/extern/ExternPagePersBrowse.php b/lib/extern/ExternPagePersBrowse.php index ceb72d5..1eb5a04 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 49c754c..a62d482 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)"; @@ -439,7 +440,7 @@ class ExternPagePersonDetails extends ExternPage private function getContentHomepagePlugins(User $user) { $content = []; - $plugins = PluginEngine::getPlugins('HomepagePlugin'); + $plugins = PluginEngine::getPlugins(HomepagePlugin::class); foreach ($plugins as $plugin) { $template = $plugin->getHomepageTemplate($user->id); if ($template) { diff --git a/lib/extern/ExternPageTimetable.php b/lib/extern/ExternPageTimetable.php index d427600..1e0e66a 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) @@ -162,7 +166,7 @@ class ExternPageTimetable extends ExternPage $time = new DateTime(); switch ($this->date_offset) { case 'start_date': - $time = DateTime::createFromFormat('d.m.Y', $this->date); + $time = $this->date ? DateTime::createFromFormat('d.m.Y', $this->date) : $time; break; case 'current_semester': $semester = Semester::findCurrent(); @@ -228,6 +232,7 @@ class ExternPageTimetable extends ExternPage protected function getContent() { $count = 0; + $date_content = []; foreach ($this->getDates() as $date) { $day = new DateTime(); $day->setTimestamp($date->date)->setTime(0, 0); |
