{% extends "base.html" %} {% block title %}Issues — RICE Scorer{% endblock %} {% block content %} {# Toggle the per-dimension heat colouring (R/I/C/E). Set to false to undo. #} {% set COLOR_SCORES = true %} {# ── Live filter bar ────────────────────────────────────────────────────────── Stays a real GET
so it works (and deep-links) without JS — the server filters identically. JS enhances it: typing/toggling debounces a ?partial=1 fetch and swaps the results in place. Anything that changes the result set carries data-filter so the JS can serialise + chip it. #}
{# Jinja for-loops are block-scoped, so accumulate non-prod envs via a namespace. #} {% set ns = namespace(envs=[('prod', 'Production'), ('all', 'All')]) %} {% for e in environments %}{% if (e or '')|lower not in ['production', 'prod'] %} {% set ns.envs = ns.envs + [(e, e|capitalize)] %} {% endif %}{% endfor %}
{% for value, label in ns.envs %} {% endfor %}
{% set active_cm = cat_meta.get(cat_filter) %}
{% set num_active = filters.get('min_reach') or filters.get('max_reach') or filters.get('min_impact') or filters.get('max_impact') or filters.get('min_rice') %}
{% include "_table.html" %}
{% endblock %}