diff --git a/app/controllers/course/timesrooms.php b/app/controllers/course/timesrooms.php index c2b51cd671a05c10895f0f561a60f72c7bba4d99..41a78a819bf0edaf3eef522f038dc932681575d1 100644 --- a/app/controllers/course/timesrooms.php +++ b/app/controllers/course/timesrooms.php @@ -331,11 +331,6 @@ class Course_TimesroomsController extends AuthenticatedController $this->date = CourseDate::find($termin_id) ?: CourseExDate::find($termin_id); $this->attributes = []; - if ($request = RoomRequest::findByDate($this->date->id)) { - $this->params = ['request_id' => $request->getId()]; - } else { - $this->params = ['new_room_request_type' => 'date_' . $this->date->id]; - } $this->only_bookable_rooms = Request::submitted('only_bookable_rooms'); if (Config::get()->RESOURCES_ENABLE) { diff --git a/app/views/course/timesrooms/_cycleRow.php b/app/views/course/timesrooms/_cycleRow.php index 71a5085e1bf9d6806a30449c014f60d95a875c3a..5a5f60b15dc211c6502ade540b99c51ffedc6d28 100644 --- a/app/views/course/timesrooms/_cycleRow.php +++ b/app/views/course/timesrooms/_cycleRow.php @@ -82,8 +82,8 @@ $is_exTermin = $termin instanceof CourseExDate; <?= $room_holiday ?: '' ?> <? endif ?> - <? $room_request_exists = RoomRequest::existsByDate($termin->id, true) ?> - <? if ($room_request_exists): ?> + <? $room_request = RoomRequest::findByDate($termin->id) ?> + <? if ($room_request && $room_request->closed == ResourceRequest::STATE_OPEN): ?> <? $msg_info = _('Für diesen Termin existiert eine Raumanfrage.') ?> <?= tooltipIcon($msg_info) ?> <? endif ?> @@ -123,9 +123,33 @@ $is_exTermin = $termin instanceof CourseExDate; <? $actionMenu->addLink( $controller->url_for('course/timesrooms/editDate/' . $termin->id, $linkAttributes), _('Termin bearbeiten'), - Icon::create('edit', Icon::ROLE_CLICKABLE, ['title' => _('Diesen Termin bearbeiten')]), + Icon::create('edit'), ['data-dialog' => ''] ) ?> + <? $actionMenu + ->conditionAll(Config::get()->RESOURCES_ENABLE && Config::get()->RESOURCES_ALLOW_ROOM_REQUESTS) + ->condition((bool) $room_request) + ->addLink( + $controller->url_for( + 'course/room_requests/request_show_summary', + $room_request + ), + _('Raumanfrage bearbeiten'), + Icon::create('room-occupied'), + ['data-dialog' => 'size=big'] + ) + ->condition(!$room_request) + ->addLink( + $controller->url_for( + 'course/room_requests/new_request', + ['range_str' => 'date', 'range_id' => $termin->id] + ), + _('Neue Raumanfrage'), + Icon::create('room-request'), + ['data-dialog' => 'size=big'] + ) + ->conditionAll(true) + ?> <? $actionMenu->addLink( $controller->url_for( diff --git a/app/views/course/timesrooms/editDate.php b/app/views/course/timesrooms/editDate.php index e3bde2c2bcc59af7b70c7ce4c8d0604bcdfcf3d9..c4c1495a6d70b8163faf27c0efdf70755f069390 100644 --- a/app/views/course/timesrooms/editDate.php +++ b/app/views/course/timesrooms/editDate.php @@ -223,25 +223,5 @@ ), ['data-dialog' => 'size=big']) ?> <? endif ?> - <? if (Request::isXhr() && !$locked && Config::get()->RESOURCES_ENABLE && Config::get()->RESOURCES_ALLOW_ROOM_REQUESTS): ?> - <? if (isset($request_id)) : ?> - <?= Studip\LinkButton::create( - _('Zur Raumanfrage wechseln'), - $controller->url_for( - 'course/room_requests/request_show_summary/' . $request_id - ), - ['data-dialog' => 'size=big'] - ) ?> - <? else : ?> - <?= Studip\LinkButton::create( - _('Raumanfrage erstellen'), - $controller->url_for( - 'course/room_requests/new_request', - array_merge($params, ['range_str' => 'date', 'range_id' => $date->id]) - ), - ['data-dialog' => 'size=big'] - ) ?> - <? endif ?> - <? endif ?> </footer> </form>