diff --git a/app/views/resources/_common/_request_tr.php b/app/views/resources/_common/_request_tr.php index 3a2f235561abea8cdc33cc0a8ed280d09b683b91..3deefe86c5af26ecac231378aa7f0c1b40b9acd0 100644 --- a/app/views/resources/_common/_request_tr.php +++ b/app/views/resources/_common/_request_tr.php @@ -83,7 +83,7 @@ ) ) ?>) <? endif ?> - <?= tooltipIcon(join("\n", $request->getTimeIntervalStrings())) ?> + <?= tooltipIcon(nl2br(join("\n", $request->getTimeIntervalStrings())), false, true) ?> <? endif ?> </td> <? $priority = $request->getPriority() ?> diff --git a/lib/models/resources/ResourceRequest.class.php b/lib/models/resources/ResourceRequest.class.php index 58e2f915f0bcb9daaa6b02ac7ff4c0492bec6767..ccc9270cb4f4e7ebfabb81f5868d8d2312e2f552 100644 --- a/lib/models/resources/ResourceRequest.class.php +++ b/lib/models/resources/ResourceRequest.class.php @@ -1195,16 +1195,27 @@ class ResourceRequest extends SimpleORMap implements PrivacyObject, Studip\Calen public function getTimeIntervalStrings() { $strings = []; - $intervals = $this->getTimeIntervals(); + $intervals = $this->getTimeIntervals(false, true); foreach ($intervals as $interval) { + $room = ''; + $date = call_user_func([$interval['range'], 'find'], $interval['range_id']); + if ($room_obj = Room::find($date->room_booking->resource_id)) { + $room = $room_obj->name; + } + $same_day = (date('Ymd', $interval['begin']) == date('Ymd', $interval['end']) ); if ($same_day) { - $strings[] = strftime('%a %x %R', $interval['begin']) . ' - ' . strftime('%R', $interval['end']); + $strings[] = strftime('%a. %x %R', $interval['begin']) + . ' - ' . strftime('%R', $interval['end']) + . ($room ? ', '. $room : ''); } else { - $strings[] = strftime('%a %x %R', $interval['begin']) . ' - ' . strftime('%a %x %R', $interval['end']); + $strings[] = strftime('%a. %x %R', $interval['begin']) + . ' - ' . strftime('%a %x %R', $interval['end']) + . ($room ? ', '. $room : ''); } + } return $strings; }