local.php 2.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152
  1. <?php
  2. /** @var string $csrfToken */
  3. /** @var string $email */
  4. /** @var bool $error */
  5. use function App\Http\e;
  6. ?>
  7. <section class="max-w-md mx-auto mt-6">
  8. <div class="rounded-lg border bg-white p-6 dark:bg-slate-800 dark:border-slate-700">
  9. <h1 class="text-xl font-semibold tracking-tight">Local admin sign-in</h1>
  10. <p class="text-slate-600 text-sm mt-1 dark:text-slate-400">
  11. Use this form only while Entra ID is not yet configured. Credentials
  12. come from the <code>LOCAL_ADMIN_*</code> environment variables.
  13. </p>
  14. <?php if ($error): ?>
  15. <div class="mt-4 rounded-md border border-red-200 bg-red-50 px-3 py-2 text-sm text-red-800 dark:bg-red-900 dark:border-red-800 dark:text-red-200">
  16. Email or password did not match.
  17. </div>
  18. <?php endif; ?>
  19. <form method="post" action="/auth/local" class="mt-4 space-y-3"
  20. autocomplete="off">
  21. <input type="hidden" name="_csrf" value="<?= e($csrfToken) ?>">
  22. <label class="block">
  23. <span class="text-sm text-slate-700 dark:text-slate-300">Email</span>
  24. <input type="email" name="email" required
  25. value="<?= e($email) ?>"
  26. class="mt-1 block w-full rounded-md border-slate-300 shadow-sm
  27. px-3 py-2 border focus:outline-none focus:ring-2
  28. focus:ring-slate-400 dark:bg-slate-800 dark:border-slate-600 dark:text-slate-100 dark:focus:ring-slate-500">
  29. </label>
  30. <label class="block">
  31. <span class="text-sm text-slate-700 dark:text-slate-300">Password</span>
  32. <input type="password" name="password" required autofocus
  33. class="mt-1 block w-full rounded-md border-slate-300 shadow-sm
  34. px-3 py-2 border focus:outline-none focus:ring-2
  35. focus:ring-slate-400 dark:bg-slate-800 dark:border-slate-600 dark:text-slate-100 dark:focus:ring-slate-500">
  36. </label>
  37. <button type="submit"
  38. class="w-full rounded-md bg-slate-900 text-white px-4 py-2 text-sm font-medium hover:bg-slate-800 dark:bg-slate-700 dark:hover:bg-slate-600">
  39. Sign in
  40. </button>
  41. </form>
  42. <p class="text-xs text-slate-500 mt-4 dark:text-slate-400">
  43. <a href="/" class="hover:underline">← Back</a>
  44. </p>
  45. </div>
  46. </section>