aboutsummaryrefslogtreecommitdiff
path: root/app/views
diff options
context:
space:
mode:
authorPeter Thienel <thienel@data-quest.de>2026-01-08 18:43:19 +0100
committerPeter Thienel <thienel@data-quest.de>2026-01-08 18:43:19 +0100
commit9fa00a819475ded9cf21859f1f9aa446293d2add (patch)
tree5a8caced5ecd1048bfb4538946775ba9f31cb61e /app/views
parent59ad17e3ff68384a719daa96bb9f5f3106fed061 (diff)
Fach, Fachbereich and views reworkedissue-4262
Diffstat (limited to 'app/views')
-rw-r--r--app/views/fachabschluss/abschluesse/details.php9
-rw-r--r--app/views/fachabschluss/faecher/details.php8
-rw-r--r--app/views/fachabschluss/faecher/fachbereiche.php24
-rw-r--r--app/views/fachabschluss/faecher/index.php23
4 files changed, 46 insertions, 18 deletions
diff --git a/app/views/fachabschluss/abschluesse/details.php b/app/views/fachabschluss/abschluesse/details.php
index b475f40..aced360 100644
--- a/app/views/fachabschluss/abschluesse/details.php
+++ b/app/views/fachabschluss/abschluesse/details.php
@@ -1,10 +1,17 @@
+<?php
+/**
+ * @var Abschluss $abschluss
+ * @var string[] $perm_institutes
+ * @var Fachabschluss_AbschluesseController $controller
+ */
+?>
<td colspan="4">
<table class="default">
<colgroup>
<col>
<col style="width: 1%;">
</colgroup>
- <? foreach ($abschluss->getFaecher() as $fach) : ?>
+ <? foreach ($abschluss->faecher as $fach) : ?>
<? if (count($perm_institutes) === 0
|| count(array_intersect($perm_institutes, $fach->getFachbereiche()->pluck('institut_id')))) : ?>
<tr>
diff --git a/app/views/fachabschluss/faecher/details.php b/app/views/fachabschluss/faecher/details.php
index b8abf4e..8271581 100644
--- a/app/views/fachabschluss/faecher/details.php
+++ b/app/views/fachabschluss/faecher/details.php
@@ -1,3 +1,8 @@
+<?php
+/**
+ * @var Fach $fach
+ */
+?>
<td colspan="3">
<table class="default">
<colgroup>
@@ -5,8 +10,7 @@
<col style="width: 40%">
<col style="width: 1%">
</colgroup>
- <?php $abschluesse = $fach->getAbschluesse()?>
- <? foreach ($abschluesse as $abschluss) : ?>
+ <? foreach ($fach->abschluesse as $abschluss) : ?>
<tr>
<td><?= htmlReady($abschluss->getDisplayName()) ?></td>
<td><?= htmlReady($abschluss->category->getDisplayName()) ?></td>
diff --git a/app/views/fachabschluss/faecher/fachbereiche.php b/app/views/fachabschluss/faecher/fachbereiche.php
index 844440c..6a99719 100644
--- a/app/views/fachabschluss/faecher/fachbereiche.php
+++ b/app/views/fachabschluss/faecher/fachbereiche.php
@@ -1,3 +1,10 @@
+<?php
+/**
+ * @var MVVController $controller
+ * @var Fachbereich[] $fachbereiche
+ * @var string $fachbereich_id
+ */
+?>
<table class="default collapsable">
<colgroup>
<col>
@@ -8,22 +15,23 @@
<?= $controller->renderSortLink('fachabschluss/faecher/fachbereiche/', _('Fächer'), 'faecher', ['style' => 'text-align: center;']) ?>
</tr>
</thead>
- <? foreach ($fachbereiche as $fachbereich): ?>
- <? if ($fachbereich['faecher']) : ?>
- <tbody class="<?= isset($fachbereich_id) && $fachbereich_id === $fachbereich['institut_id'] ? 'not-collapsed' : 'collapsed' ?>">
+ <? foreach ($fachbereiche as $fachbereich_data): ?>
+ <? $fachbereich = Fachbereich::buildExisting($fachbereich_data); ?>
+ <? if ($fachbereich->faecher) : ?>
+ <tbody class="<?= isset($fachbereich_id) && $fachbereich_id === $fachbereich->id ? 'not-collapsed' : 'collapsed' ?>">
<tr class="header-row">
<td class="toggle-indicator">
<a class="mvv-load-in-new-row"
- href="<?= $controller->action_link('details_fachbereich/' . $fachbereich['institut_id']) ?>"><?= htmlReady($fachbereich['name']) ?></a>
+ href="<?= $controller->action_link('details_fachbereich/' . $fachbereich->id) ?>"><?= htmlReady($fachbereich->getDisplayName()) ?></a>
</td>
- <td style="text-align: center;" class="dont-hide"><?= htmlReady($fachbereich['faecher']) ?> </td>
+ <td style="text-align: center;" class="dont-hide"><?= $fachbereich->faecher->count() ?> </td>
</tr>
- <? if (isset($fachbereich_id) && $fachbereich_id === $fachbereich['institut_id']): ?>
+ <? if (isset($fachbereich_id) && $fachbereich_id === $fachbereich->id): ?>
<tr class="loaded-details nohover">
- <?= $this->render_partial('fachabschluss/faecher/details_fachbereich', compact('fach')) ?>
+ <?= $this->render_partial('fachabschluss/faecher/details_fachbereich', compact('fachbereich')) ?>
</tr>
<? endif; ?>
</tbody>
<? endif; ?>
- <? endforeach ?>
+ <? endforeach; ?>
</table>
diff --git a/app/views/fachabschluss/faecher/index.php b/app/views/fachabschluss/faecher/index.php
index b42761e..39c720d 100644
--- a/app/views/fachabschluss/faecher/index.php
+++ b/app/views/fachabschluss/faecher/index.php
@@ -1,3 +1,12 @@
+<?php
+/**
+ * @var int $count
+ * @var MVVController $controller
+ * @var Fach[] $faecher
+ * @var string $fach_id
+ * @var int $page
+ */
+?>
<form method="post">
<?= CSRFProtection::tokenTag(); ?>
<table class="default collapsable">
@@ -12,18 +21,19 @@
<th style="width: 5%; text-align: right;"><?= _('Aktionen') ?></th>
</tr>
</thead>
- <? foreach ($faecher as $fach): ?>
- <tbody class="<?= $fach->count_abschluesse ? '' : 'empty' ?> <?= ($fach_id === $fach->id ? 'not-collapsed' : 'collapsed') ?>">
+ <? foreach ($faecher as $fach_data) : ?>
+ <? $fach = Fach::buildExisting($fach_data); ?>
+ <tbody class="<?= $fach->abschluesse->count() ? '' : 'empty' ?> <?= ($fach_id === $fach->id ? 'not-collapsed' : 'collapsed') ?>">
<tr class="header-row">
<td class="toggle-indicator">
- <? if ($fach->count_abschluesse) : ?>
+ <? if ($fach->abschluesse->count()) : ?>
<a class="mvv-load-in-new-row"
href="<?= $controller->action_link('details/' . $fach->id) ?>"><?= htmlReady($fach->name) ?></a>
<? else: ?>
<?= htmlReady($fach->name) ?>
<? endif; ?>
</td>
- <td class="dont-hide" style="text-align: center;"><?= $fach->count_abschluesse ?> </td>
+ <td class="dont-hide" style="text-align: center;"><?= $fach->abschluesse->count() ?> </td>
<td class="dont-hide actions" style="white-space: nowrap;">
<? if (MvvPerm::havePermWrite($fach)) : ?>
<a href="<?= $controller->action_link('fach/' . $fach->id) ?>">
@@ -31,7 +41,7 @@
</a>
<? endif; ?>
<? if (MvvPerm::havePermCreate($fach)) : ?>
- <? if ($fach->count_abschluesse == 0): ?>
+ <? if ($fach->abschluesse->count() == 0): ?>
<?= Icon::create('trash', Icon::ROLE_CLICKABLE, tooltip2(_('Fach löschen')))->asInput(
[
'formaction' => $controller->action_url('delete/' . $fach->id),
@@ -39,7 +49,7 @@
'name' => 'delete'
]); ?>
<? else : ?>
- <?= Icon::create('trash', Icon::ROLE_INACTIVE, tooltip2(_('Fach kann nicht glöscht werden')))->asSvg(); ?>
+ <?= Icon::create('trash', Icon::ROLE_INACTIVE, tooltip2(_('Fach kann nicht gelöscht werden')))->asSvg(); ?>
<? endif; ?>
<? endif; ?>
</td>
@@ -65,7 +75,6 @@
$pagination->set_attribute('pagelink', $page_link);
echo $pagination->render();
?>
-
</td>
</tr>
</tfoot>