{% extends "base.html" %} {% block title %}{{ network_name }} - Nodes{% endblock %} {% block content %}

Nodes

{{ total }} total
{% if api_error %}
Could not fetch data from API: {{ api_error }}
{% endif %}
Clear
{% for node in nodes %} {% set ns = namespace(tag_name=none) %} {% for tag in node.tags or [] %} {% if tag.key == 'name' %} {% set ns.tag_name = tag.value %} {% endif %} {% endfor %} {% else %} {% endfor %}
Node Type Last Seen Tags
{% if ns.tag_name or node.name %}
{{ ns.tag_name or node.name }}
{{ node.public_key[:16] }}...
{% else %} {{ node.public_key[:16] }}... {% endif %}
{% if node.adv_type and node.adv_type|lower == 'chat' %} 💬 {% elif node.adv_type and node.adv_type|lower == 'repeater' %} 📡 {% elif node.adv_type and node.adv_type|lower == 'room' %} 🪧 {% elif node.adv_type %} 📍 {% else %} - {% endif %} {% if node.last_seen %} {{ node.last_seen[:19].replace('T', ' ') }} {% else %} - {% endif %} {% if node.tags %}
{% for tag in node.tags[:3] %} {{ tag.key }} {% endfor %} {% if node.tags|length > 3 %} +{{ node.tags|length - 3 }} {% endif %}
{% else %} - {% endif %}
No nodes found.
{% if total_pages > 1 %}
{% if page > 1 %} Previous {% else %} {% endif %} {% for p in range(1, total_pages + 1) %} {% if p == page %} {% elif p == 1 or p == total_pages or (p >= page - 2 and p <= page + 2) %} {{ p }} {% elif p == 2 or p == total_pages - 1 %} {% endif %} {% endfor %} {% if page < total_pages %} Next {% else %} {% endif %}
{% endif %} {% endblock %}