Files
pointeuse-optimisator/app/templates/login.html
Antoine 0b47e4a625 Corrige le rendu de la page mot de passe, masque la nav si non connecté,
réduit le score spam des emails, et rend le niveau de log configurable

- Les styles .login-* étaient définis uniquement dans login.html, donc
  set_password.html s'affichait sans aucun style. Déplacé dans base.html.
- La nav affichait les liens même sans session active.
- mail.py ajoute Message-ID/Date et encode en quoted-printable (au lieu
  de base64) pour réduire le score spam (MISSING_MID, MISSING_DATE,
  MIME_BASE64_TEXT).
- log_level devient une directive de config.json plutôt qu'une variable
  d'environnement.
- README: section démarrage rapide (copie de config.example.json,
  compose.override.yml pour les surcharges locales).
2026-07-17 22:16:48 +02:00

57 lines
1.5 KiB
HTML

{% extends "base.html" %}
{% block content %}
<div class="login-wrap">
<div class="login-card">
<div class="login-header">
<span class="login-eyebrow">Décompte Horaire</span>
<h1 class="login-title">Connexion</h1>
</div>
{% if error %}
<div class="login-error">{{ error }}</div>
{% endif %}
{% if step == "email" %}
<form method="post" action="/login" class="login-form">
<label class="login-label" for="email">Adresse email</label>
<input
id="email"
class="login-input"
type="email"
name="email"
value="{{ email }}"
autocomplete="email"
autofocus
placeholder="prenom.nom@domaine.fr"
required
>
<button class="login-btn" type="submit">Continuer</button>
</form>
{% elif step == "password" %}
<form method="post" action="/login/password" class="login-form">
<input type="hidden" name="email" value="{{ email }}">
<label class="login-label">{{ email }}</label>
<input
id="password"
class="login-input"
type="password"
name="password"
autocomplete="current-password"
autofocus
placeholder="Mot de passe"
required
>
<button class="login-btn" type="submit">Se connecter</button>
</form>
{% elif step == "sent" %}
<p class="login-hint">
Un email a été envoyé à <b>{{ email }}</b> avec un lien pour définir ton mot de passe.
Le lien est valable 24h.
</p>
{% endif %}
</div>
</div>
{% endblock %}