From 42c9c67e4d9b1d424129d8110bc49d02fca82ecd Mon Sep 17 00:00:00 2001 From: Jan-Hendrik Willms Date: Wed, 30 Nov 2022 10:07:47 +0000 Subject: fixes #1815 Closes #1815 Merge request studip/studip!1207 --- app/controllers/consultation/admin.php | 4 ++++ .../consultation/admin/block-responsibilities.php | 6 +++++- app/views/consultation/admin/create.php | 22 ++++++++++++++++++++++ lib/models/ConsultationBlock.php | 4 +--- 4 files changed, 32 insertions(+), 4 deletions(-) diff --git a/app/controllers/consultation/admin.php b/app/controllers/consultation/admin.php index 737a667..bad2421 100644 --- a/app/controllers/consultation/admin.php +++ b/app/controllers/consultation/admin.php @@ -168,6 +168,10 @@ class Consultation_AdminController extends ConsultationController throw new InvalidArgumentException(_('Die definierte Zeit bis zur Pause ist kleiner als die Dauer eines Termins.')); } + if ($this->range instanceof Institute && !Request::getArray('responsibilities')) { + throw new InvalidArgumentException(_('Es muss mindestens eine durchführende Person, Statusgruppe oder Einrichtung ausgewählt werden.')); + } + $slot_count = ConsultationBlock::countSlots( $start, $end, diff --git a/app/views/consultation/admin/block-responsibilities.php b/app/views/consultation/admin/block-responsibilities.php index 4d1b5ee..82f4586 100644 --- a/app/views/consultation/admin/block-responsibilities.php +++ b/app/views/consultation/admin/block-responsibilities.php @@ -1,5 +1,9 @@ 1, _('Dienstag') => 2, @@ -158,6 +166,20 @@ $intervals = [
+ +

+ +

+

+ + +

+ + render_partial('consultation/admin/block-responsibilities.php', compact('responsible')) ?>
diff --git a/lib/models/ConsultationBlock.php b/lib/models/ConsultationBlock.php index 55c31dc..e7140e3 100644 --- a/lib/models/ConsultationBlock.php +++ b/lib/models/ConsultationBlock.php @@ -104,9 +104,7 @@ class ConsultationBlock extends SimpleORMap implements PrivacyObject $persons[] = $block->range; } elseif ($block->range instanceof Course) { $persons = ConsultationResponsibility::getCourseResponsibilities($block->range); - } elseif ($block->range instanceof Institute) { - $persons = ConsultationResponsibility::getInstituteResponsibilites($block->range); - } else { + } elseif (!($block->range instanceof Institute)) { throw new Exception('Unknown range type'); } -- cgit v1.0