{% extends 'layout.html' %} {% from 'include/session.html' import browser, os %} {% from 'include/modal_dialog.html' import modal_dialog, button_confirm, modal_confirm %} {% set breadcrumbs = breadcrumb_page('admin') + breadcrumb_page(self) %} {% block content %}

{% trans %}This is a list of devices that are logged into this application. It may include authenticated and unauthenticated users. You may revoke any sessions that you do not recognize except your current session.{% endtrans %}

{% set buttons = [ {'text': _('All'), 'extend': 'reset'}, {'text': _('Authenticated'), 'extend': 'filter', 'column': 3, 'search': 1}, {'text': _('Anonymous'), 'extend': 'filter', 'column': 3, 'search': 0}, ] %} {% trans %}Device{% endtrans %} {% trans %}IP Address{% endtrans %} {% trans %}User{% endtrans %} {% trans %}Authenticated{% endtrans %} {% trans %}Last accessed{% endtrans %} {% trans %}Signed in{% endtrans %} {% trans %}Expiration Time{% endtrans %} {% trans %}Actions{% endtrans %} {% for session in active_sessions %} {{ browser(session.user_agent) }} {% trans %}running on{% endtrans %} {{ os(session.user_agent) }} {% if session.current %} {% trans %}current session{% endtrans %} {% endif %} {% if session.login_persistent %} {% trans %}persistent{% endtrans %} {% endif %} {{ session.ip_address }} {% if session.username %}{{ session.username }}{% endif %} {{ _("Yes") if session.username else _('No') }} {% if not session.current %} {{ button_confirm(label=_('Revoke') , target="#delete-session-modal", action="delete", number=session.number) }} {% endif %} {% endfor %} {{ modal_confirm(id='delete-session-modal', title=_('Revoke Session') , message=_("Are you sure? The device will be signed out from the application."), fields=['action', 'number'], submit=_('Revoke')) }} {% endblock %}