47 lines
1.7 KiB
PHP
Executable File
47 lines
1.7 KiB
PHP
Executable File
<?php
|
|
declare(strict_types=1);
|
|
|
|
$auth = app()->auth();
|
|
$authUser = $auth->user();
|
|
$modules = array_values(array_filter(
|
|
$auth->filterModules(modules()->all()),
|
|
static fn (array $module): bool => !empty($module['enabled'])
|
|
));
|
|
?>
|
|
<section class="module-list-section" data-reveal>
|
|
<div class="section-head">
|
|
<div>
|
|
<h2 class="section-title">Verfuegbare Module</h2>
|
|
<p>Module mit Login-Pflicht erscheinen erst nach passender Anmeldung.</p>
|
|
</div>
|
|
<?php if ($authUser !== null): ?>
|
|
<div style="display:flex; gap:10px; flex-wrap:wrap;">
|
|
<a class="nav-link" href="/modules">Module verwalten</a>
|
|
<?php if (auth_is_admin()): ?>
|
|
<a class="nav-link" href="/exports/database.sql">SQL-Export</a>
|
|
<?php endif; ?>
|
|
</div>
|
|
<?php endif; ?>
|
|
</div>
|
|
|
|
<?php if ($modules === []): ?>
|
|
<div class="empty-state" data-reveal>
|
|
Keine Module fuer den aktuellen Zugriff sichtbar.
|
|
</div>
|
|
<?php else: ?>
|
|
<div class="module-list">
|
|
<?php foreach ($modules as $module): ?>
|
|
<a class="module-row" href="<?= e((string)($module['entry'] ?? ('/module/' . $module['name']))) ?>">
|
|
<span class="module-row__icon"><?= e(strtoupper(substr((string)($module['title'] ?? $module['name']), 0, 1))) ?></span>
|
|
<span class="module-row__content">
|
|
<span class="module-kicker"><?= e((string)($module['name'] ?? '')) ?></span>
|
|
<strong class="module-title"><?= e((string)($module['title'] ?? $module['name'] ?? 'Modul')) ?></strong>
|
|
<span class="module-desc"><?= e((string)($module['description'] ?? '')) ?></span>
|
|
</span>
|
|
<span class="module-row__action">Oeffnen</span>
|
|
</a>
|
|
<?php endforeach; ?>
|
|
</div>
|
|
<?php endif; ?>
|
|
</section>
|