{% extends "base.html" %} {% from "components/ui.html" import anywhere_tag, card, empty, fact, facts, rights_tags %} {% from "components/grants.html" import role_tags %} {% block title %}Overview · {{ APP_NAME }}{% endblock %} {% block heading %}Overview{% endblock %} {% block subheading %}
Signed in as {{ rights.name }}
{% endblock %} {% block content %} {% call facts("You") %} {{ fact("Name", rights.name) }} {% call fact("Roles") %}{{ role_tags(rights.roles) }}{% endcall %} {% call fact("Accounts") %}{{ rows | length }} you may use{% endcall %} {% if view.groups or view.operations %} {% call fact("Beyond one account") %}{{ rights_tags(view.groups, view.operations) }}{% endcall %} {% endif %} {% call fact("Last sign-in") %}{% if previous_sign_in %}{{ previous_sign_in | when }}, before this one{% else %}this is the first{% endif %}{% endcall %} {% call fact("Go to") %}{% if own_page %}Your page · {% endif %}Password{% if can_recover %} · Recovery key{% endif %}{% endcall %} {% endcall %} {% if anywhere %}
You may read mail and send it to any address on at least one account. A mail with injected instructions could use that to carry data out. A grant with recipients narrows sending.
{% endif %} {% if rows %} {% call card("Your accounts", meta=rows | length, tight=True) %}
{% for row in rows %} {% set account = row.rights %} {% endfor %}
AccountStatusYou may
{% if row.page %}{{ account.email }}{% else %}{{ account.email }}{% endif %} {{ account.display_name | or_missing }} {% include "partials/account_status.html" %} {{ rights_tags(row.view.groups, row.view.operations) }} {% if "read_and_send_anywhere" in account.warnings %}{{ anywhere_tag() }}{% endif %} {% if row.mail %}Mail{% endif %}
{% endcall %} {% else %} {{ empty("No account yet, or none you may use.") }} {% endif %} {% if service is not none %} {% call card("Service") %} {% if not service.attention and not service.failing %}

All is well: every account is connected and syncs, every webhook delivers.

{% else %} {% endif %}

{% if service.worker is none %}The sync worker is switched off. {% elif service.worker.last_pass_at %}The sync worker's last pass ended {{ service.worker.last_pass_at | when }}. It runs every {{ service.worker.interval | round | int }} seconds. {% else %}The sync worker has not finished its first pass yet.{% endif %}

{% endcall %} {% endif %} {% endblock %}