{#
Copyright 2025 New Vector Ltd.

SPDX-License-Identifier: AGPL-3.0-only OR LicenseRef-Element-Commercial
Please see LICENSE files in the repository root for full details.
-#}

{% extends "base.html" %}

{% set is_too_many_sessions = violations | length == 1 and violations[0].code == "too-many-sessions" %}
{% set num_sessions_need_to_remove = violations[0].need_to_remove if is_too_many_sessions else none %}

{% block content %}
  <header class="page-heading">
    <div class="icon invalid">
      {{ icon.error_solid() }}
    </div>

    {% if is_too_many_sessions %}
      <div class="header" data-testid="device-limit-reached">
        <h1 class="title">{{ _("mas.policy_violation.too_many_sessions.heading") }}</h1>
        <p class="text">{{ _("mas.policy_violation.too_many_sessions.description", num_devices_to_remove=num_sessions_need_to_remove) }}</p>
      </div>
    {% else %}
      <div class="header" data-testid="generic-policy-violation">
        <h1 class="title">{{ _("mas.policy_violation.heading") }}</h1>
        <p class="text">{{ _("mas.policy_violation.description") }}</p>
      </div>
    {% endif %}
  </header>

  <main class="flex flex-col gap-10">
    <div class="flex gap-1 justify-center items-center">
      <p class="cpd-text-secondary cpd-text-body-md-regular">
        {{ _("mas.policy_violation.logged_as", username=current_session.user.username) }}
      </p>

      {{ logout.button(text=_("action.sign_out"), csrf_token=csrf_token, post_logout_action=action, as_link=True) }}
    </div>

    {% if is_too_many_sessions %}
      {{ button.link(text=_("mas.policy_violation.too_many_sessions.manage_devices"), href="/account/sessions") }}
    {% endif %}
  </main>
{% endblock content %}
