{% extends 'base/layout.html' %} {% load static %} {% load i18n %} {% block title %}Network Map{% endblock %} {% block content %}

Network Map

{# ── Toolbar ─────────────────────────────────────────────────────────────── #}
{# Object counts — updated by JS after client-side filtering #} {{ total_sites }}{% if sites_truncated %}+{% endif %}/{{ total_sites }} sites  ·  {{ total_segments }}{% if segments_truncated %}+{% endif %}/{{ total_segments }} segments  ·  {{ total_circuits }}{% if circuits_truncated %}+{% endif %}/{{ total_circuits }} circuits {# Segment colour scheme #} {# Circuit colour scheme #} {# Site colour scheme #} {# Legend #}
{# Visibility toggles #}
{# Fit all #} {# Tile layer picker #} {% include './inc/map_layer_dropdown.html' %}
{# ── Active filter chips ───────────────────────────────────────────────────── #} {% if sites_truncated or segments_truncated or circuits_truncated %} {% endif %} {# ── Two-column layout: map + filter sidebar ─────────────────────────────── #}
{# ── Map ──────────────────────────────────────────────────────────────── #}
{# ── Right column: info card + filter sidebar ────────────────────────── #}
{# ── Info card — populated by JS on click ─────────────────────────────── #} {# ── Filter sidebar ───────────────────────────────────────────────────── #}
Filters
{# ── Spatial (shared) ──────────────────────────── #}
Location
{{ filter_form.region_id }}
{{ filter_form.site_group_id }}
{{ filter_form.at_any_site }}
{# ── Sites ─────────────────────────────────────── #}

Sites
{{ filter_form.site_status }}
{{ filter_form.site_tenant_id }}
{# ── Segments ──────────────────────────────────── #}

Segments
{{ filter_form.segment_status }}
{{ filter_form.segment_type }}
{{ filter_form.segment_provider_id }}
{# ── Circuits ──────────────────────────────────── #}

Circuits
{{ filter_form.circuit_status }}
{{ filter_form.circuit_type_id }}
{{ filter_form.circuit_provider_id }}
{# end right column #}
{# end two-column layout #} {% include './inc/leaflet_includes.html' %} {% include './inc/map_layers_styles.html' %} {# Data blob — read by object_map.js #} {% include './inc/map_layers_config.html' %} {% endblock content %}