Files
nexus/partials/landingpages/index.php
Lars Gebhardt-Kusche c15c90bf6d
All checks were successful
Deploy / deploy-staging (push) Successful in 5s
Deploy / deploy-production (push) Has been skipped
asdsd
2026-04-11 02:31:23 +02:00

82 lines
3.0 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="home-hero" data-reveal>
<a class="brand-mark" href="/" aria-label="Nexus">
<img src="/assets/images/logo.png" alt="Nexus Logo">
</a>
<div class="brand-copy">
<span class="eyebrow">Nexus</span>
<h1><?= e(defined('APP_DOMAIN_PRIMARY') ? (string)APP_DOMAIN_PRIMARY : 'Nexus') ?></h1>
<p>Kompakter Einstieg fuer die verfuegbaren Module.</p>
</div>
<div class="theme-switcher" aria-label="Farbschema">
<?php if ($auth->isEnabled()): ?>
<a class="auth-pill" href="<?= $authUser === null ? '/auth/login' : '/auth/logout' ?>">
<?= $authUser === null ? 'Login' : 'Logout ' . e((string)($authUser['username'] ?? $authUser['name'] ?? '')) ?>
</a>
<?php endif; ?>
<label>
<span>Modus</span>
<select data-theme-mode>
<option value="day">Day</option>
<option value="night">Night</option>
</select>
</label>
<label>
<span>Farbe</span>
<select data-theme-accent>
<option value="logo">Logo</option>
<option value="pink">Pink</option>
<option value="cyan">Cyan</option>
<option value="orange">Orange</option>
<option value="green">Gruen</option>
</select>
</label>
</div>
</section>
<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>