aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPeter Thienel <thienel@data-quest.de>2025-06-24 14:52:50 +0000
committerPeter Thienel <thienel@data-quest.de>2025-06-24 14:52:50 +0000
commit212be8a303bf10cc14fe0f43388e6ad1a10b6045 (patch)
treec788a8430b3fb68327ebffb821bf3601adc524d1
parent9360ea5d075fddbbec3dedb51e064b13d9f05343 (diff)
Resolve "Seite mit Ausprägungen wird angezeigt, auch wenn nur eine zur Auswahl steht"
Closes #5656 Merge request studip/studip!4278
-rw-r--r--app/controllers/search/studiengaenge.php14
1 files changed, 13 insertions, 1 deletions
diff --git a/app/controllers/search/studiengaenge.php b/app/controllers/search/studiengaenge.php
index 9930673..7035a63 100644
--- a/app/controllers/search/studiengaenge.php
+++ b/app/controllers/search/studiengaenge.php
@@ -165,7 +165,19 @@ class Search_StudiengaengeController extends MVVController
private function einfach($studiengang_id)
{
$studiengangTeile = StudiengangTeil::findByStudiengang($studiengang_id);
- if (count($studiengangTeile) == 1) {
+ // Count visible versions. If only one is visible redirect to course plan.
+ $count_versions = 0;
+ foreach ($studiengangTeile as $studiengangTeil) {
+ $visible_versions = $studiengangTeil->versionen->filter(
+ function ($version) {
+ return $version->hasPublicStatus();
+ }
+ );
+ if (count($visible_versions)) {
+ $count_versions++;
+ }
+ }
+ if ($count_versions === 1) {
$teil = $studiengangTeile;
$id = $teil[0]->getId();
$this->verlauf_action($id);