{% with messages = get_flashed_messages() %}{% if messages %} {% for m in messages %}
{{ m }}
{% endfor %} {% endif %}{% endwith %}

CONSOLE ADMIN

Supervision en temps réel des casiers et des utilisateurs
--:--:--
{% set premium_count = users | selectattr('premium') | list | length %} {% set active_lockers = locker_owners | length %}
Utilisateurs
{{ users | length }}
{{ premium_count }} premium · {{ users | length - premium_count }} gratuit
Sessions totales
{{ total_sessions }}
Toutes périodes confondues
Revenus totaux
{{ "%.0f"|format(total_revenue) }}€
Montant cumulé
Casiers actifs
{{ active_lockers }} / {{ locker_defs | length }}
Appairés à un utilisateur
Casiers en direct
{{ locker_defs | length }} casiers
{% for key, locker_def in locker_defs.items() %} {% set lid = locker_def.id %} {% set ldata = lockers_data.get(lid, {}) or {} %} {% set lstatus = ldata.get('status', 'locked') %} {% set lsess = ldata.get('active_session') or {} %} {% set owner = locker_owners.get(key) %} {% set is_active = (lstatus == 'unlocked' or lstatus == 'reserved') %}
{{ locker_def.name | upper }}
{% if not owner %} NON APPAIRÉ {% elif lstatus == 'unlocked' %} EN COURS {% elif lstatus == 'reserved' %} RÉSERVÉ {% else %} FERMÉ {% endif %}
{% if owner %}
{% if owner.photo %} {{ owner.pseudo }} {% else %} {% endif %}
{{ owner.pseudo }}
{{ owner.email }}
{% if lstatus == 'unlocked' and lsess.get('expires_at') %}
Temps restant --:--:--
{% elif lstatus == 'reserved' and lsess.get('started_at') %}
Avant ouverture --:--:--
{% endif %}
{% else %}
AUCUN UTILISATEUR
ASSOCIÉ
{% endif %}
{% endfor %}
Aperçu rapide
{% set total_u = users | length if users | length > 0 else 1 %}
Plan premium
{{ premium_count }} / {{ users | length }}
Plan gratuit
{{ users | length - premium_count }} / {{ users | length }}
Casiers appairés
{{ active_lockers }} / {{ locker_defs | length }}
Revenu moyen / user
{{ "%.1f"|format(total_revenue / total_u) }}€
Cliquez sur le bouton ACTUALISER en haut à droite pour mettre à jour les données affichées.
Utilisateurs
{{ users | length }} comptes
{% if users %}
{% for u in users %} {% endfor %}
Utilisateur Email Plan Sessions Revenus Actions
{% if u.photo %} {{ u.pseudo }} {% else %} {{ (u.pseudo[0] if u.pseudo and u.pseudo != '-' else '?') | upper }} {% endif %}
{{ u.pseudo }}
{{ u.email }}
{% if u.premium %} PREMIUM {% else %} GRATUIT {% endif %} {{ u.sessions }} {{ "%.2f"|format(u.revenue) }} €
{% if u.premium %} {% else %} {% endif %}
{% else %}
AUCUN UTILISATEUR ENREGISTRÉ
{% endif %}