{% extends "security/base.html" %}
{% block title %}Segurança e 2FA{% endblock %}
{% block content %}
<section class="k4w-account-hero">
  <div><p class="eyebrow">A MINHA CONTA</p><h1>Segurança e autenticação</h1><p>Controle o segundo fator, os códigos de recuperação e a atividade recente.</p></div>
  <span class="k4w-security-state {% if device %}is-on{% else %}is-off{% endif %}">{% if device %}2FA ativo{% else %}2FA inativo{% endif %}</span>
</section>
<div class="k4w-account-grid">
  <section class="k4w-security-card">
    <h2>Autenticação de dois fatores</h2>
    {% if device %}
      <p>A sua conta está protegida por uma aplicação autenticadora.</p>
      <dl class="k4w-detail-list"><div><dt>Dispositivo</dt><dd>{{ device.name }}</dd></div><div><dt>Última utilização</dt><dd>{{ device.last_used_at|date:"d/m/Y H:i"|default:"Ainda não registada" }}</dd></div><div><dt>Códigos de recuperação</dt><dd>{{ recovery_remaining }} disponíveis</dd></div></dl>
      <a class="portal-button portal-button--secondary" href="{% url 'security:recovery_codes' %}">Gerar novos códigos</a>
      {% if not staff_enforced %}
      <form method="post" action="{% url 'security:disable' %}" class="k4w-security-form k4w-danger-zone">{% csrf_token %}
        <h3>Desativar 2FA</h3><p>Confirme a palavra-passe e um código atual.</p>
        <label>Palavra-passe atual<input type="password" name="password" required></label>
        <label>Código atual ou de recuperação<input type="text" name="token" required></label>
        <button class="portal-button portal-button--danger" type="submit">Desativar segundo fator</button>
      </form>
      {% else %}<div class="portal-alert portal-alert--info">A política do backoffice exige 2FA para esta conta.</div>{% endif %}
    {% else %}
      <p>Ative o segundo fator para impedir o acesso apenas com a palavra-passe.</p>
      <a class="portal-button portal-button--primary" href="{% url 'security:setup' %}">Ativar agora</a>
    {% endif %}
  </section>
  <section class="k4w-security-card">
    <h2>Atividade recente</h2>
    <div class="k4w-event-list">{% for event in recent_events %}<article><span>{{ event.get_event_type_display }}</span><small>{{ event.created_at|date:"d/m/Y H:i" }}{% if event.ip_address %} · {{ event.ip_address }}{% endif %}</small></article>{% empty %}<p>Ainda não existe atividade registada.</p>{% endfor %}</div>
  </section>
</div>
{% endblock %}
