From edddac01ff58973ad6299dd53c58b5667c8b4f8a Mon Sep 17 00:00:00 2001
From: pcain <pcain@usgs.gov>
Date: Tue, 5 Oct 2021 12:55:30 -0600
Subject: [PATCH] Truncate monitor output, make expandable

---
 geomagio/processing/monitor.py | 24 +++++++++++++++++++-----
 1 file changed, 19 insertions(+), 5 deletions(-)

diff --git a/geomagio/processing/monitor.py b/geomagio/processing/monitor.py
index 78b4cbb8..0bede2a5 100755
--- a/geomagio/processing/monitor.py
+++ b/geomagio/processing/monitor.py
@@ -55,11 +55,25 @@ def get_gaps(gaps):
     """
     gap_string = ""
     if len(gaps):
-        for gap in gaps:
-            gap_string += "&nbsp;&nbsp;&nbsp;&nbsp; %s to %s <br>\n" % (
-                format_time(gap[0]),
-                format_time(gap[1]),
-            )
+        for i in range(len(gaps)):
+            if i < 10:
+                gap_string += "&nbsp;&nbsp;&nbsp;&nbsp; %s to %s <br>\n" % (
+                    format_time(gaps[i][0]),
+                    format_time(gaps[i][1]),
+                )
+            else:
+                if i == 10:
+                    gap_string += "<details>\n"
+                    gap_string += f"<summary>+ {len(gaps) - 10}</summary>\n"
+                    gap_string += "<span>\n"
+                else:
+                    gap_string += "&nbsp;&nbsp;&nbsp;&nbsp; %s to %s <br>\n" % (
+                        format_time(gaps[i][0]),
+                        format_time(gaps[i][1]),
+                    )
+                if i == len(gaps) - 1:
+                    gap_string += "</span>\n"
+                    gap_string += "</details>\n"
     else:
         gap_string = "&nbsp;&nbsp;&nbsp;&nbsp;None<br>"
     return gap_string
-- 
GitLab