55 lines
2.2 KiB
PHP
55 lines
2.2 KiB
PHP
<?php
|
|
|
|
declare(strict_types=1);
|
|
|
|
$productName = (string) ($loginScreen['branding']['product_name'] ?? 'Kusche.Berlin');
|
|
$headline = (string) ($loginScreen['branding']['headline'] ?? 'Desktop Login');
|
|
$subheadline = (string) ($loginScreen['branding']['subheadline'] ?? '');
|
|
$loginUrl = $loginScreen['login_url'] ?? null;
|
|
$previewUrl = $loginScreen['preview_url'] ?? null;
|
|
$keycloakReady = (bool) ($loginScreen['keycloak_ready'] ?? false);
|
|
$callbackUrl = (string) ($loginScreen['callback_url'] ?? '');
|
|
?><!DOCTYPE html>
|
|
<html lang="de">
|
|
<head>
|
|
<meta charset="utf-8">
|
|
<meta name="viewport" content="width=device-width, initial-scale=1">
|
|
<title><?= htmlspecialchars($headline, ENT_QUOTES) ?></title>
|
|
<link rel="stylesheet" href="/assets/auth/login.css">
|
|
</head>
|
|
<body>
|
|
<main class="login-shell">
|
|
<section class="login-panel">
|
|
<div class="login-panel-top">
|
|
<p class="login-kicker"><?= htmlspecialchars($productName, ENT_QUOTES) ?></p>
|
|
<h1><?= htmlspecialchars($headline, ENT_QUOTES) ?></h1>
|
|
<p class="login-copy"><?= htmlspecialchars($subheadline, ENT_QUOTES) ?></p>
|
|
</div>
|
|
|
|
<div class="login-actions">
|
|
<?php if ($loginUrl !== null): ?>
|
|
<a class="login-button login-button-primary" href="<?= htmlspecialchars($loginUrl, ENT_QUOTES) ?>">Mit Keycloak anmelden</a>
|
|
<?php else: ?>
|
|
<div class="login-button login-button-disabled">Keycloak noch nicht konfiguriert</div>
|
|
<?php endif; ?>
|
|
|
|
<?php if ($previewUrl !== null): ?>
|
|
<a class="login-button login-button-secondary" href="<?= htmlspecialchars($previewUrl, ENT_QUOTES) ?>">Desktop-Vorschau</a>
|
|
<?php endif; ?>
|
|
</div>
|
|
|
|
<dl class="login-meta">
|
|
<div>
|
|
<dt>Status</dt>
|
|
<dd><?= $keycloakReady ? 'Keycloak bereit' : 'Konfiguration fehlt' ?></dd>
|
|
</div>
|
|
<div>
|
|
<dt>Callback</dt>
|
|
<dd><?= htmlspecialchars($callbackUrl, ENT_QUOTES) ?></dd>
|
|
</div>
|
|
</dl>
|
|
</section>
|
|
</main>
|
|
</body>
|
|
</html>
|