{% extends "admin/_layout.html" %} {% from "_macros.html" import icon %} {% set section = "users" %} {% block title %}{{ target.name }} - Users - {{ brand.name }}{% endblock %} {% block heading %}{{ target.name }}{% endblock %} {% block admin_content %}
{{ icon("chevron-left", "icon--sm") }} All users · {{ target.email }}
{% if saved %}Read-only, and deliberately: every switch here is set somewhere else — in the baseline or in a named group — and a control on this page would be a third place to change one thing. What it adds is the {{ t("source") }}, which is the question the grids could not answer without opening every group by eye.
{% for section_name, defs in permission_groups.items() %}{{ t("Edited from the group's own page. One control per value, so a save here cannot undo a save there.") }}
{% if target.groups %}{{ t("In no group. They get the baseline and nothing more.") }}
{% endif %}{{ t("Counted from the first of the month, UTC. Recorded for every reply including one that was stopped or failed — an endpoint charges for tokens it generated whether or not anybody wanted them.") }}
Resolved across their groups by {{ t("maximum") }} — the union rule applied to numbers, so a second group can only ever grant more. Zero means no limit and wins outright, because a group saying “unlimited” must not count for less than one saying “a million”.
{{ t("Model access is separate from permissions: a permission says what somebody may do, this says what they may do it with.") }}
{% if models %}{{ t("None. They cannot start a chat at all.") }}
{% endif %}{{ t("Signs them out everywhere. An administrator resetting a password usually means the account is compromised or the person has gone.") }}
{{ t("Their chats, folders and library go too, and every share naming them or naming anything of theirs.") }}