From 42d43939f718f0190d70aedcdaf774b5086bdfc5 Mon Sep 17 00:00:00 2001
From: Vanessa Stehr <vanessa.stehr@ptb.de>
Date: Mon, 17 Jun 2024 15:14:30 +0200
Subject: [PATCH] Add option to control active tab via URL parameter

---
 main.py | 10 ++++++++++
 1 file changed, 10 insertions(+)

diff --git a/main.py b/main.py
index defbe3e..4b46a59 100644
--- a/main.py
+++ b/main.py
@@ -277,7 +277,17 @@ class page():
         tab2_layout = column(self.title, self.upload_widget, self.valid_units_message, self.invalid_units_message, self.invalid_units_list)
         tab2 = TabPanel(child=tab2_layout, title="XML Unit Validator")
 
+
+        # Handle URL parameter active tab
         tabs = Tabs(tabs=[tab1, tab2])
+        try:
+            active_tab = int(curdoc().session_context.request.arguments["active_tab"][0])
+        except:
+            active_tab = 0
+        if active_tab >= len(tabs.tabs):
+            active_tab = 0
+        tabs.active=active_tab
+
         curdoc().add_root(tabs)
 
     def process_xml(self, attr, old, new):
-- 
GitLab