From 1551d6441e07a921f2615c18493378272d27db2f Mon Sep 17 00:00:00 2001
From: Bjarke Madsen <bjarke@nordu.net>
Date: Tue, 5 Nov 2024 12:21:08 +0100
Subject: [PATCH] Set default minimum interval of 5m per panel and 15m for TNMS
 data

---
 brian_dashboard_manager/templating/helpers.py | 5 ++++-
 brian_dashboard_manager/templating/render.py  | 4 ++++
 2 files changed, 8 insertions(+), 1 deletion(-)

diff --git a/brian_dashboard_manager/templating/helpers.py b/brian_dashboard_manager/templating/helpers.py
index e2b3226..22f3137 100644
--- a/brian_dashboard_manager/templating/helpers.py
+++ b/brian_dashboard_manager/templating/helpers.py
@@ -268,7 +268,9 @@ def get_nren_interface_data(services, interfaces, excluded_dashboards, region_cu
             name = service.get('name')
             sid = service.get('sid')
             scid = service.get('scid')
-            service_type = service.get('service_type')
+            service_type = service.get('service_type', '')
+
+            is_lambda = service_type.lower() in ['geant managed wavelength service', 'geant lambda']
 
             measurement = 'scid_rates'
 
@@ -315,6 +317,7 @@ def get_nren_interface_data(services, interfaces, excluded_dashboards, region_cu
                 'measurement': measurement,
                 'title': title,
                 'scid': scid,
+                'is_lambda': is_lambda,
                 'sort': (sid[:2], name),
                 'has_v6': has_v6_interface
             })
diff --git a/brian_dashboard_manager/templating/render.py b/brian_dashboard_manager/templating/render.py
index 8671e15..b706a24 100644
--- a/brian_dashboard_manager/templating/render.py
+++ b/brian_dashboard_manager/templating/render.py
@@ -181,6 +181,7 @@ def create_panel(
     y_axis_type="bits",
     targets=None,
     panel_targets=None,
+    is_lambda=False,
     **_
 ):
     """
@@ -193,6 +194,8 @@ def create_panel(
     """
     yaxes = create_yaxes(y_axis_type)
 
+    interval = 5 if not is_lambda else 15
+
     result = {
         "aliasColors": alias_colors or {},
         "bars": False,
@@ -207,6 +210,7 @@ def create_panel(
         "gridPos": {"h": height, "w": width, "x": x, "y": y},
         "hiddenSeries": False,
         "id": id,
+        "interval": f"{interval}m",
         "lines": True,
         "linewidth": linewidth,
         "nullPointMode": "null",
-- 
GitLab