From 41fd281a3555a80cd2e75ccef0a0ddedea5f2fca Mon Sep 17 00:00:00 2001 From: Elmar Ludwig <elmar.ludwig@uni-osnabrueck.de> Date: Fri, 20 May 2022 14:55:04 +0000 Subject: [PATCH] add short_name property to Semester class, fixes #1071 Closes #1071 Merge request studip/studip!650 --- app/controllers/shared/download.php | 4 ++-- app/views/admin/semester/index.php | 2 +- lib/classes/globalsearch/GlobalSearchCourses.php | 2 +- lib/classes/globalsearch/GlobalSearchMyCourses.php | 2 +- lib/models/Course.class.php | 4 ++-- lib/models/Semester.class.php | 3 +++ 6 files changed, 10 insertions(+), 7 deletions(-) diff --git a/app/controllers/shared/download.php b/app/controllers/shared/download.php index 39fc7ddae1a..59b17512687 100644 --- a/app/controllers/shared/download.php +++ b/app/controllers/shared/download.php @@ -86,7 +86,7 @@ class Shared_DownloadController extends AuthenticatedController $this->exportTcpdf($blocks, self::sanitizeFilename( _('Modulhandbuch'), trim($this->StgteilVersion->studiengangteil->getDisplayName()), - $semester->semester_token ?: $semester->name, + $semester->short_name, $language )); } @@ -280,4 +280,4 @@ class Shared_DownloadController extends AuthenticatedController } return $result; } -} \ No newline at end of file +} diff --git a/app/views/admin/semester/index.php b/app/views/admin/semester/index.php index bae47376310..b9bdbbb85d6 100644 --- a/app/views/admin/semester/index.php +++ b/app/views/admin/semester/index.php @@ -59,7 +59,7 @@ <? endif; ?> </td> <td> - <?= htmlReady($semester->semester_token ?: '- ' . _('keins') . ' -') ?> + <?= htmlReady((string) $semester->semester_token ?: '- ' . _('keins') . ' -') ?> </td> <td> <?= strftime('%x', $semester->beginn) ?> diff --git a/lib/classes/globalsearch/GlobalSearchCourses.php b/lib/classes/globalsearch/GlobalSearchCourses.php index a966d97c477..d7f95e2c9ee 100644 --- a/lib/classes/globalsearch/GlobalSearchCourses.php +++ b/lib/classes/globalsearch/GlobalSearchCourses.php @@ -197,7 +197,7 @@ class GlobalSearchCourses extends GlobalSearchModule implements GlobalSearchFull 'number' => self::mark($course->veranstaltungsnummer, $search), 'name' => self::mark($course->getFullname(), $search), 'url' => URLHelper::getURL("dispatch.php/course/details/index/{$course->id}", [], true), - 'date' => $semester->token ?: $semester->name, + 'date' => $semester->short_name, 'dates' => $turnus_string, 'has_children' => count($course->children) > 0, 'children' => $result_children, diff --git a/lib/classes/globalsearch/GlobalSearchMyCourses.php b/lib/classes/globalsearch/GlobalSearchMyCourses.php index 715fda9fa4d..3c4b4776a14 100644 --- a/lib/classes/globalsearch/GlobalSearchMyCourses.php +++ b/lib/classes/globalsearch/GlobalSearchMyCourses.php @@ -138,7 +138,7 @@ class GlobalSearchMyCourses extends GlobalSearchModule 'number' => self::mark($course->veranstaltungsnummer, $search), 'name' => self::mark($course->getFullname(), $search), 'url' => URLHelper::getURL('seminar_main.php', ['cid' => $course->id], true), - 'date' => $semester->token ?: $semester->name, + 'date' => $semester->short_name, 'dates' => $turnus_string, 'has_children' => count($course->children) > 0, 'children' => $result_children, diff --git a/lib/models/Course.class.php b/lib/models/Course.class.php index 172bb086296..9670cc492f3 100644 --- a/lib/models/Course.class.php +++ b/lib/models/Course.class.php @@ -393,9 +393,9 @@ class Course extends SimpleORMap implements Range, PrivacyObject, StudipItem, Fe public function getTextualSemester() { if (count($this->semesters) > 1) { - return $this->start_semester->name . ' - ' . $this->end_semester->name; + return $this->start_semester->short_name . ' - ' . $this->end_semester->short_name; } elseif (count($this->semesters) === 1) { - return $this->start_semester->name; + return $this->start_semester->short_name; } else { return _('unbegrenzt'); } diff --git a/lib/models/Semester.class.php b/lib/models/Semester.class.php index 2652de83784..614e8fc3d60 100644 --- a/lib/models/Semester.class.php +++ b/lib/models/Semester.class.php @@ -41,6 +41,9 @@ class Semester extends SimpleORMap $config['additional_fields']['last_sem_week']['get'] = 'getLastSemesterWeek'; $config['additional_fields']['current']['get'] = 'isCurrent'; $config['additional_fields']['past']['get'] = 'isPast'; + $config['additional_fields']['short_name']['get'] = function($semester) { + return (string) $semester->semester_token ?: (string) $semester->name; + }; $config['additional_fields']['absolute_seminars_count'] = [ 'get' => 'seminarCounter', -- GitLab