aboutsummaryrefslogtreecommitdiff
path: root/app/views
diff options
context:
space:
mode:
authorDavid Siegfried <david.siegfried@uni-vechta.de>2023-03-11 12:08:39 +0000
committerDavid Siegfried <david.siegfried@uni-vechta.de>2023-03-11 12:08:39 +0000
commitc246c15b42d29bff4fd05d8a98cdcf1dc5782baf (patch)
tree70d9fd86f2bcc1bbc349558711b1be1676adffcd /app/views
parent9f4330a9bd6ecbdb6f6ea8380d42d4ef7ded8f74 (diff)
add missing action-menu, closes #2342
Closes #2342 Merge request studip/studip!1531
Diffstat (limited to 'app/views')
-rw-r--r--app/views/resources/_common/_resource_tree_item.php51
1 files changed, 48 insertions, 3 deletions
diff --git a/app/views/resources/_common/_resource_tree_item.php b/app/views/resources/_common/_resource_tree_item.php
index a3db866..504226c 100644
--- a/app/views/resources/_common/_resource_tree_item.php
+++ b/app/views/resources/_common/_resource_tree_item.php
@@ -1,15 +1,60 @@
<?php
$children = $resource->children;
$has_children = count($children) > 0;
+$current_user_is_resource_admin = $resource->userHasPermission(User::findCurrent(), 'admin');
+$current_user_is_resource_autor = $resource->userHasPermission(User::findCurrent(), 'autor');
+$current_user_is_resource_tutor = $resource->userHasPermission(User::findCurrent(), 'tutor');
+$booking_plan_is_visible = $resource->bookingPlanVisibleForUser(User::findCurrent());
?>
<article class="studip <?= $has_children ? 'toggle' : ((string)$resource->description === '' ? 'empty' : '') ?> <?= $open ? 'open' : '' ?>">
<header>
<h1>
<a href="#"><?= htmlReady($resource->getFullName()) ?></a>
</h1>
- <a href="<?= $resource->getActionLink('show') ?>" data-dialog>
- <?= Icon::create('info-circle') ?>
- </a>
+ <?= ActionMenu::get()
+ ->addLink(
+ $resource->getActionURL('show'),
+ _('Informationen anzeigen'),
+ Icon::create('info-circle'),
+ ['data-dialog' => 'sitze=auto']
+ )
+ ->condition($current_user_is_resource_admin)
+ ->addLink(
+ $resource->getActionURL('edit'),
+ _('Bearbeiten'),
+ Icon::create('edit'),
+ ['data-dialog' => 'size=auto']
+ )
+ ->condition($current_user_is_resource_admin)
+ ->addLink(
+ $resource->getActionURL('permissions'),
+ _('Rechte bearbeiten'),
+ Icon::create('roles'),
+ ['data-dialog' => 'size=auto']
+ )
+ ->conditionAll(($resource instanceof Room && $current_user_is_resource_autor) || $booking_plan_is_visible)
+ ->addLink(
+ $resource->getActionURL('booking_plan'),
+ _('Wochenbelegung'),
+ Icon::create('timetable'),
+ ['target' => '_blank']
+ )
+ ->addLink(
+ $resource->getActionURL('semester_plan'),
+ _('Semesterbelegung'),
+ Icon::create('timetable'),
+ ['target' => '_blank']
+ )
+ ->conditionAll(null)
+ ->condition($resource instanceof Room && $current_user_is_resource_tutor && $resource->requestable)
+ ->addLink(
+ $resource->getActionURL('request_list'),
+ _('Raumanfragen anzeigen'),
+ Icon::create('room-request'),
+ ['target' => '_blank']
+ )
+ ->render();
+ ?>
</header>
<? if ($has_children) : ?>
<section>