{#
Global Navigation Partial
Single source of truth for app navigation
Compatible with:
- index.html (uses switchMode() for mode panels)
- Dashboard pages (uses navigation links)
Variables:
- active_mode: Current active mode (e.g., 'pager', 'adsb', 'wifi')
- is_index_page: If true, Satellite/SSTV use switchMode (panel mode)
If false (default), Satellite links to dashboard
#}
{% set is_index_page = is_index_page|default(false) %}
{% macro mode_item(mode, label, icon_svg, href=None) -%}
{%- set is_active = 'active' if active_mode == mode else '' -%}
{%- if href %}
{{ icon_svg | safe }}
{{ label }}
{%- elif is_index_page %}
{%- else %}
{{ icon_svg | safe }}
{{ label }}
{%- endif %}
{%- endmacro %}
{% macro mobile_item(mode, label, icon_svg, href=None) -%}
{%- set is_active = 'active' if active_mode == mode else '' -%}
{%- if href %}
{{ icon_svg | safe }} {{ label }}
{%- elif is_index_page %}
{%- else %}
{{ icon_svg | safe }} {{ label }}
{%- endif %}
{%- endmacro %}
{# Desktop Navigation - uses existing CSS class names for compatibility #}
{# Mobile Navigation Bar #}
{# JavaScript stub for pages that don't have switchMode defined #}