diff --git a/docker/routlin-dash/app/config_utils.py b/docker/routlin-dash/app/config_utils.py index a0df9f4..3d67dad 100644 --- a/docker/routlin-dash/app/config_utils.py +++ b/docker/routlin-dash/app/config_utils.py @@ -731,7 +731,7 @@ def config_datasource(name): row['local_entries'] = '' row['source_display'] = row.get('url', '') vlan_names = used_by.get(bl.get('name', ''), []) - row['used_by'] = json.dumps([{'n': n, 'd': ''} for n in vlan_names]) + row['used_by'] = json.dumps([{'n': n, 'd': ''} for n in vlan_names]) if vlan_names else 'Not used by any VLANs' rows.append(row) return rows diff --git a/docker/routlin-dash/app/factory.py b/docker/routlin-dash/app/factory.py index 64dc205..7524eda 100644 --- a/docker/routlin-dash/app/factory.py +++ b/docker/routlin-dash/app/factory.py @@ -988,6 +988,8 @@ def build_table_cell(value, render_fn, col_class='', field='', row_idx=None, if render_fn == 'tag_list': opts = render_options or {} prefer_short = opts.get('prefer_short', False) + if value.startswith('<'): + return f'{td_open}{value}' try: items = json.loads(value) if value.startswith('[') else [s.strip() for s in value.split(',')] except Exception: diff --git a/docker/routlin-dash/app/pages/dnsblocking/view.py b/docker/routlin-dash/app/pages/dnsblocking/view.py index 5b2ae32..1e596dc 100644 --- a/docker/routlin-dash/app/pages/dnsblocking/view.py +++ b/docker/routlin-dash/app/pages/dnsblocking/view.py @@ -49,12 +49,8 @@ def _last_dl_time(): def blocklist_stats_html(cfg): - db_rows = config_utils._bl_db_rows() - last_dl = _last_dl_time() - bl_vlans = {} - for vlan in cfg.get('vlans', []): - for bl_name in vlan.get('use_blocklists', []): - bl_vlans.setdefault(bl_name, []).append(vlan['name']) + db_rows = config_utils._bl_db_rows() + last_dl = _last_dl_time() rows = '' for bl in cfg.get('dns_blocking', {}).get('blocklists', []): name = bl.get('name', '') @@ -94,15 +90,12 @@ def blocklist_stats_html(cfg): warn = WARN_ICON else: warn = '' - vlan_names = bl_vlans.get(name, []) - used_by = ', '.join(factory.e(v) for v in vlan_names) if vlan_names else 'Not used by any VLANs' rows += ( '' f'{factory.e(name)}' f'{entries}' f'{size_str}' f'{factory.e(last_refreshed)}{warn}' - f'{used_by}' '' ) if not rows: @@ -113,7 +106,6 @@ def blocklist_stats_html(cfg): 'Entries' 'Size' 'Last Refreshed' - 'Used by VLAN(s)' '' f'{rows}' )