From 0a0792c4cf40e920ebd4c74b30b8c58ef11bfa9a Mon Sep 17 00:00:00 2001
From: "Hahn Axel (hahn)" <axel.hahn@unibe.ch>
Date: Thu, 14 Dec 2023 10:04:41 +0100
Subject: [PATCH] toggle actoionlog timeline

---
 .../deployment/classes/actionlog.class.php    | 27 ++++++++++++++++++-
 1 file changed, 26 insertions(+), 1 deletion(-)

diff --git a/public_html/deployment/classes/actionlog.class.php b/public_html/deployment/classes/actionlog.class.php
index 76528803..ac16f794 100644
--- a/public_html/deployment/classes/actionlog.class.php
+++ b/public_html/deployment/classes/actionlog.class.php
@@ -350,10 +350,35 @@ class Actionlog
                     -->
                     <script src="/vendor/vis/4.21.0/vis.min.js"></script>
                     <link href="/vendor/vis/4.21.0/vis.min.css" rel="stylesheet" type="text/css" />
-                    <div id="divTimeline"></div>
+
+                    <button onclick="setTimelineVisibility(\'block\');"  id="btnShowTimeline" class="btn btn-default btnTimeline"><i class="fa-solid fa-chevron-right"></i> </button>
+                    <button onclick="setTimelineVisibility(\'none\');"   id="btnHideTimeline" class="btn btn-default btnTimeline"><i class="fa-solid fa-chevron-down"></i> </button>
+                    &nbsp; ' . t("class-actionlog-timeline") . (isset($aFilter["project"]) ? ' [' . $aFilter["project"] . '] ' : '')
+                    .'<div id="divTimeline"></div>
                 </div>
                 <script>
                     var sMsgNolog="' . t("class-actionlog-nolog") . '";
+
+                    function getTimelineVisibility(){
+                        var sReturn=localStorage.getItem("bActionTimelineVisible");
+                        sReturn=(sReturn=="block")?"block":"none";
+                        return sReturn;
+                    }
+                    function setTimelineVisibility(sVisibility){
+                        localStorage.setItem("bActionTimelineVisible", sVisibility);
+                        $("#divTimeline").css("display", sVisibility);
+                        $(".btnTimeline").css("display", "none");
+                        if (sVisibility=="block"){
+                            $("#btnHideTimeline").css("display", "inline");
+                            $(document).ready(function() {
+                                updateActionlog();
+                            });
+                        } else {
+                            $("#btnShowTimeline").css("display", "inline");
+                        }
+                    }
+                    setTimelineVisibility(getTimelineVisibility());
+
                 </script>';
 
         if ($bIsFullsearch) {
-- 
GitLab