{% extends 'generic/object.html' %} {% load render_table from django_tables2 %} {% block content %} {# ── Action Buttons ── #}
Ping All IPs Discover New IPs Jobs run in the background — check Jobs for status
{# ── Schedule Configuration ── #}
Auto-Scan Schedule
{% csrf_token %} {% if scan_result %} {% endif %}
Scan Mode
{{ schedule_form.scan_mode }} {% if plugin_settings.auto_scan_enabled %} Global: On — {{ plugin_settings.get_auto_scan_interval_display }} {% else %} Global: Off {% endif %}
Scan Interval {{ schedule_form.scan_interval }}
Discover Mode
{{ schedule_form.discover_mode }} {% if plugin_settings.auto_discover_enabled %} Global: On — {{ plugin_settings.get_auto_discover_interval_display }} {% else %} Global: Off {% endif %}
Discover Interval {{ schedule_form.discover_interval }}
Stale Detection
{{ schedule_form.stale_mode }} {% if plugin_settings.stale_enabled %} Global: On {% else %} Global: Off {% endif %}
Ping Mode
{{ schedule_form.ping_mode }} {% if plugin_settings.ssh_jumphost_enabled %} Global: SSH On {% if plugin_settings.default_jumphost %} — {{ plugin_settings.default_jumphost.name }} {% endif %} {% else %} Global: Local {% endif %}
Custom Jumphost {{ schedule_form.custom_jumphost }}
Last Scanned {% if scan_result and scan_result.last_scanned %} {{ scan_result.last_scanned|timesince }} ago {% else %} Never {% endif %}
Next Scan {% if scan_result and scan_result.next_scan_at %} {% now "U" as now_ts %} in {{ scan_result.next_scan_at|timeuntil }} {{ scan_result.next_scan_at }} {% else %} Not scheduled {% endif %}
Last Discovered {% if scan_result and scan_result.last_discovered %} {{ scan_result.last_discovered|timesince }} ago {% else %} Never {% endif %}
Next Discover {% if scan_result and scan_result.next_discover_at %} in {{ scan_result.next_discover_at|timeuntil }} {{ scan_result.next_discover_at }} {% else %} Not scheduled {% endif %}
Scan Summary {{ scan_result.hosts_up }} up {{ scan_result.hosts_down }} down {% if scan_result.hosts_new %} {{ scan_result.hosts_new }} new {% endif %} {% if scan_result.hosts_stale %} {{ scan_result.hosts_stale }} stale {% endif %} {% if scan_result.hosts_skipped %} {{ scan_result.hosts_skipped }} skipped {% endif %} / {{ scan_result.total_hosts }} total
{# Show/hide interval rows based on mode selection #} {# ── Ping Results Table ── #} {% if table.rows|length > 0 %} {% render_table table %} {% else %}
No ping results yet. Click Ping All IPs to scan existing IPs or Discover New IPs to find new hosts.
{% endif %} {% endblock %}