Skip to content
Snippets Groups Projects
Commit a790d2e3 authored by Moritz Strohm's avatar Moritz Strohm
Browse files

TIC #88

parent d669eb40
No related branches found
No related tags found
No related merge requests found
...@@ -1523,6 +1523,8 @@ class Resources_RoomRequestController extends AuthenticatedController ...@@ -1523,6 +1523,8 @@ class Resources_RoomRequestController extends AuthenticatedController
$resolve = Request::submitted('resolve') || $force_resolve; $resolve = Request::submitted('resolve') || $force_resolve;
$this->show_force_resolve_button = false; $this->show_force_resolve_button = false;
$this->booked_room_infos = [];
if ($resolve) { if ($resolve) {
CSRFProtection::verifyUnsafeRequest(); CSRFProtection::verifyUnsafeRequest();
$this->selected_rooms = array_filter(Request::getArray('selected_rooms')); $this->selected_rooms = array_filter(Request::getArray('selected_rooms'));
...@@ -1616,6 +1618,16 @@ class Resources_RoomRequestController extends AuthenticatedController ...@@ -1616,6 +1618,16 @@ class Resources_RoomRequestController extends AuthenticatedController
); );
if ($booking instanceof ResourceBooking) { if ($booking instanceof ResourceBooking) {
$bookings[] = $booking; $bookings[] = $booking;
if ($this->booked_room_infos[$room->id]) {
if ($this->booked_room_infos[$room->id]['first_booking_date'] > $booking->begin) {
$this->booked_room_infos[$room->id]['first_booking_date'] = $booking->begin;
}
} else {
$this->booked_room_infos[$room->id] = [
'room' => $room,
'first_booking_date' => $booking->begin
];
}
} }
} catch (Exception $e) { } catch (Exception $e) {
$errors[] = $e->getMessage(); $errors[] = $e->getMessage();
...@@ -1731,6 +1743,22 @@ class Resources_RoomRequestController extends AuthenticatedController ...@@ -1731,6 +1743,22 @@ class Resources_RoomRequestController extends AuthenticatedController
); );
} }
} }
if ($this->booked_room_infos) {
//Sort the array:
uasort(
$this->booked_room_infos,
function ($a, $b) {
if ($a['room']->name > $b['room']->name) {
return 1;
} elseif ($a['room']->name < $b['room']->name) {
return -1;
} else {
return 0;
}
}
);
}
} }
} }
......
...@@ -2,6 +2,35 @@ ...@@ -2,6 +2,35 @@
data-dialog="size=big;<?= Request::submitted('reload-on-close') ? 'reload-on-close' : ''; ?>" data-dialog="size=big;<?= Request::submitted('reload-on-close') ? 'reload-on-close' : ''; ?>"
action="<?= $controller->link_for('resources/room_request/resolve/' . $request->id) ?>"> action="<?= $controller->link_for('resources/room_request/resolve/' . $request->id) ?>">
<?= CSRFProtection::tokenTag() ?> <?= CSRFProtection::tokenTag() ?>
<? if ($booked_room_infos): ?>
<article class="studip">
<header>
<h1><?= _('Gebuchte Räume') ?></h1>
</header>
<section>
<ul class="list-csv">
<? foreach ($booked_room_infos as $room_info) : ?>
<li>
<a href="<?= $room_info['room']->getActionLink(
'booking_plan',
['defaultDate' => date('Y-m-d', $room_info['first_booking_date'])]
) ?>" target="_blank"
title="<?= _('Belegungsplan anzeigen') ?>">
<?= htmlReady($room_info['room']->getFullName()) ?>
<?= Icon::create('link-intern')->asImg(
[
'class' => 'text-bottom',
'title' => ''
]
) ?>
</a>
</li>
<? endforeach ?>
</ul>
</section>
</article>
<? endif ?>
<section class="splitted-layout">
<? if ($show_info) : ?> <? if ($show_info) : ?>
<article class="studip left-part"> <article class="studip left-part">
<header> <header>
...@@ -328,6 +357,7 @@ ...@@ -328,6 +357,7 @@
</article> </article>
<? endif ?> <? endif ?>
<? endif ?> <? endif ?>
</section>
<footer data-dialog-button> <footer data-dialog-button>
<? if ($prev_request) : ?> <? if ($prev_request) : ?>
<?= \Studip\LinkButton::create( <?= \Studip\LinkButton::create(
......
...@@ -452,6 +452,7 @@ form#resolve-request, form#decline-request { ...@@ -452,6 +452,7 @@ form#resolve-request, form#decline-request {
@media all and (min-width: 1600px) { @media all and (min-width: 1600px) {
form#resolve-request { form#resolve-request {
section.splitted-layout {
display: flex; display: flex;
flex-direction: row; flex-direction: row;
flex-wrap: wrap; flex-wrap: wrap;
...@@ -537,6 +538,7 @@ form#resolve-request, form#decline-request { ...@@ -537,6 +538,7 @@ form#resolve-request, form#decline-request {
} }
} }
} }
}
@media all and (max-width: 1599px) { @media all and (max-width: 1599px) {
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment