From 74986d1ac6e5d0433bff460aa2b0d1757c75f4b4 Mon Sep 17 00:00:00 2001
From: Andrew Dolgov <noreply@fakecake.org>
Date: Thu, 11 Feb 2021 15:49:32 +0300
Subject: [PATCH] shorten pref tab names; make log-alert clickable

---
 classes/handler/public.php |  2 +-
 index.php                  |  2 +-
 js/App.js                  |  7 +++++--
 js/PrefFeedTree.js         |  2 +-
 js/PrefFilterTree.js       |  2 +-
 js/PrefHelpers.js          |  4 ++--
 js/PrefLabelTree.js        |  2 +-
 js/PrefUsers.js            |  2 +-
 prefs.php                  | 12 ++++++------
 themes/compact.css         |  1 +
 themes/compact_night.css   |  1 +
 themes/light.css           |  1 +
 themes/light/tt-rss.less   |  1 +
 themes/night.css           |  1 +
 themes/night_blue.css      |  1 +
 15 files changed, 25 insertions(+), 16 deletions(-)

diff --git a/classes/handler/public.php b/classes/handler/public.php
index c6310f18b..9dbb197f2 100755
--- a/classes/handler/public.php
+++ b/classes/handler/public.php
@@ -871,7 +871,7 @@ class Handler_Public extends Handler {
 
 				if ($feed_id) {
 					print "<form method='GET' action=\"$tp_uri\">
-					<input type='hidden' name='tab' value='feedConfig'>
+					<input type='hidden' name='tab' value='feeds'>
 					<input type='hidden' name='method' value='editfeed'>
 					<input type='hidden' name='methodparam' value='$feed_id'>
 					<button dojoType='dijit.form.Button' class='alt-info' type='submit'>".__("Edit subscription options")."</button>
diff --git a/index.php b/index.php
index 6834891ee..ead02f2c4 100644
--- a/index.php
+++ b/index.php
@@ -167,7 +167,7 @@
             <i class="material-icons net-alert" style="display : none"
                 title="<?php echo __("Communication problem with server.") ?>">error_outline</i>
 
-            <i class="material-icons log-alert" style="display : none"
+            <i class="material-icons log-alert" style="display : none" onclick="App.openPreferences('system')"
                  title="<?php echo __("Recent entries found in event log.") ?>">warning</i>
 
             <i id="updates-available" class="material-icons icon-new-version" style="display : none"
diff --git a/js/App.js b/js/App.js
index 87c4bd3e7..db7797b75 100644
--- a/js/App.js
+++ b/js/App.js
@@ -1098,7 +1098,7 @@ const App = {
             this.displayDlg(__("Tag cloud"), "printTagCloud");
          };
          this.hotkey_actions["goto_prefs"] = () => {
-            document.location.href = "prefs.php";
+            App.openPreferences();
          };
          this.hotkey_actions["select_article_cursor"] = () => {
             const id = Article.getUnderPointer();
@@ -1163,10 +1163,13 @@ const App = {
          };
       }
    },
+   openPreferences: function(tab) {
+      document.location.href = "prefs.php" + (tab ? "?tab=" + tab : "");
+   },
    onActionSelected: function(opid) {
       switch (opid) {
          case "qmcPrefs":
-            document.location.href = "prefs.php";
+            App.openPreferences();
             break;
          case "qmcLogout":
             App.postCurrentWindow("public.php", {op: "logout", csrf_token: __csrf_token});
diff --git a/js/PrefFeedTree.js b/js/PrefFeedTree.js
index 4ea0cdac1..acd410a2c 100644
--- a/js/PrefFeedTree.js
+++ b/js/PrefFeedTree.js
@@ -92,7 +92,7 @@ define(["dojo/_base/declare", "dojo/dom-construct", "lib/CheckBoxTree"], functio
 			let search = (searchElem) ? searchElem.value : "";
 
 			xhrPost("backend.php", { op: "pref-feeds", search: search }, (transport) => {
-				dijit.byId('feedConfigTab').attr('content', transport.responseText);
+				dijit.byId('feedsTab').attr('content', transport.responseText);
 				Notify.close();
 			});
 		},
diff --git a/js/PrefFilterTree.js b/js/PrefFilterTree.js
index 0e8e52658..b2041d182 100644
--- a/js/PrefFilterTree.js
+++ b/js/PrefFilterTree.js
@@ -90,7 +90,7 @@ define(["dojo/_base/declare", "dojo/dom-construct", "lib/CheckBoxTree"], functio
 			if (user_search) { search = user_search.value; }
 
 			xhrPost("backend.php", { op: "pref-filters", search: search }, (transport) => {
-				dijit.byId('filterConfigTab').attr('content', transport.responseText);
+				dijit.byId('filtersTab').attr('content', transport.responseText);
 				Notify.close();
 			});
 		},
diff --git a/js/PrefHelpers.js b/js/PrefHelpers.js
index 57dff2333..f9cb450e5 100644
--- a/js/PrefHelpers.js
+++ b/js/PrefHelpers.js
@@ -58,7 +58,7 @@ const	Helpers = {
 		},
 		update: function() {
 			xhrPost("backend.php", { op: "pref-system", severity: dijit.byId("severity").attr('value'), page: Helpers.EventLog.log_page }, (transport) => {
-				dijit.byId('systemConfigTab').attr('content', transport.responseText);
+				dijit.byId('systemTab').attr('content', transport.responseText);
 				Notify.close();
 			});
 		},
@@ -206,7 +206,7 @@ const	Helpers = {
 	},
 	refresh: function() {
 		xhrPost("backend.php", { op: "pref-prefs" }, (transport) => {
-			dijit.byId('genConfigTab').attr('content', transport.responseText);
+			dijit.byId('prefsTab').attr('content', transport.responseText);
 			Notify.close();
 		});
 	},
diff --git a/js/PrefLabelTree.js b/js/PrefLabelTree.js
index b14474feb..624b197b4 100644
--- a/js/PrefLabelTree.js
+++ b/js/PrefLabelTree.js
@@ -54,7 +54,7 @@ define(["dojo/_base/declare", "dojo/dom-construct", "lib/CheckBoxTree", "dijit/f
 		},
 		reload: function() {
 			xhrPost("backend.php", { op: "pref-labels" }, (transport) => {
-				dijit.byId('labelConfigTab').attr('content', transport.responseText);
+				dijit.byId('labelsTab').attr('content', transport.responseText);
 				Notify.close();
 			});
 		},
diff --git a/js/PrefUsers.js b/js/PrefUsers.js
index f09c73805..2cebce6ef 100644
--- a/js/PrefUsers.js
+++ b/js/PrefUsers.js
@@ -9,7 +9,7 @@ const	Users = {
 		const search = user_search ? user_search.value : "";
 
 		xhrPost("backend.php", { op: "pref-users", sort: sort, search: search }, (transport) => {
-			dijit.byId('userConfigTab').attr('content', transport.responseText);
+			dijit.byId('usersTab').attr('content', transport.responseText);
 			Notify.close();
 		});
 	},
diff --git a/prefs.php b/prefs.php
index ad96ab15e..07e636a0a 100644
--- a/prefs.php
+++ b/prefs.php
@@ -136,26 +136,26 @@
 
 <div id="main" dojoType="dijit.layout.BorderContainer">
     <div dojoType="dijit.layout.TabContainer" region="center" id="pref-tabs">
-        <div id="genConfigTab" dojoType="dijit.layout.ContentPane"
+        <div id="prefsTab" dojoType="dijit.layout.ContentPane"
             href="backend.php?op=pref-prefs"
             title="<i class='material-icons'>settings</i> <?php echo __('Preferences') ?>"></div>
-        <div id="feedConfigTab" dojoType="dijit.layout.ContentPane"
+        <div id="feedsTab" dojoType="dijit.layout.ContentPane"
             href="backend.php?op=pref-feeds"
             title="<i class='material-icons'>rss_feed</i>  <?php echo __('Feeds') ?>"></div>
-        <div id="filterConfigTab" dojoType="dijit.layout.ContentPane"
+        <div id="filtersTab" dojoType="dijit.layout.ContentPane"
             style="padding : 0px"
             href="backend.php?op=pref-filters"
             title="<i class='material-icons'>filter_list1</i> <?php echo __('Filters') ?>"></div>
-        <div id="labelConfigTab" dojoType="dijit.layout.ContentPane"
+        <div id="labelsTab" dojoType="dijit.layout.ContentPane"
             style="padding : 0px"
             href="backend.php?op=pref-labels"
             title="<i class='material-icons'>label_outline1</i> <?php echo __('Labels') ?>"></div>
         <?php if ($_SESSION["access_level"] >= 10) { ?>
-            <div id="userConfigTab" dojoType="dijit.layout.ContentPane"
+            <div id="usersTab" dojoType="dijit.layout.ContentPane"
                 style="padding : 0px"
                 href="backend.php?op=pref-users"
                 title="<i class='material-icons'>person</i> <?php echo __('Users') ?>"></div>
-            <div id="systemConfigTab" dojoType="dijit.layout.ContentPane"
+            <div id="systemTab" dojoType="dijit.layout.ContentPane"
                 href="backend.php?op=pref-system"
                 title="<i class='material-icons'>info_outline</i> <?php echo __('System') ?>"></div>
         <?php } ?>
diff --git a/themes/compact.css b/themes/compact.css
index 8dc12d92f..c3c953b0e 100644
--- a/themes/compact.css
+++ b/themes/compact.css
@@ -707,6 +707,7 @@ body.ttrss_main #toolbar-frame #toolbar .left i.icon-error {
 }
 body.ttrss_main #toolbar-frame #toolbar i.log-alert {
   color: #ddba1c;
+  cursor: pointer;
 }
 body.ttrss_main #toolbar-frame #toolbar i {
   margin: 0 4px;
diff --git a/themes/compact_night.css b/themes/compact_night.css
index 0777e0550..17d390895 100644
--- a/themes/compact_night.css
+++ b/themes/compact_night.css
@@ -707,6 +707,7 @@ body.ttrss_main #toolbar-frame #toolbar .left i.icon-error {
 }
 body.ttrss_main #toolbar-frame #toolbar i.log-alert {
   color: #ddba1c;
+  cursor: pointer;
 }
 body.ttrss_main #toolbar-frame #toolbar i {
   margin: 0 4px;
diff --git a/themes/light.css b/themes/light.css
index eba96e405..7d34794e4 100644
--- a/themes/light.css
+++ b/themes/light.css
@@ -707,6 +707,7 @@ body.ttrss_main #toolbar-frame #toolbar .left i.icon-error {
 }
 body.ttrss_main #toolbar-frame #toolbar i.log-alert {
   color: #ddba1c;
+  cursor: pointer;
 }
 body.ttrss_main #toolbar-frame #toolbar i {
   margin: 0 4px;
diff --git a/themes/light/tt-rss.less b/themes/light/tt-rss.less
index 835585fe6..65ec33bc3 100644
--- a/themes/light/tt-rss.less
+++ b/themes/light/tt-rss.less
@@ -826,6 +826,7 @@ body.ttrss_main {
 
 			i.log-alert {
 				color : #ddba1c;
+				cursor : pointer;
 			}
 
 			i {
diff --git a/themes/night.css b/themes/night.css
index f15b73d85..880cfe001 100644
--- a/themes/night.css
+++ b/themes/night.css
@@ -708,6 +708,7 @@ body.ttrss_main #toolbar-frame #toolbar .left i.icon-error {
 }
 body.ttrss_main #toolbar-frame #toolbar i.log-alert {
   color: #ddba1c;
+  cursor: pointer;
 }
 body.ttrss_main #toolbar-frame #toolbar i {
   margin: 0 4px;
diff --git a/themes/night_blue.css b/themes/night_blue.css
index f7e81386d..49c9b15c4 100644
--- a/themes/night_blue.css
+++ b/themes/night_blue.css
@@ -708,6 +708,7 @@ body.ttrss_main #toolbar-frame #toolbar .left i.icon-error {
 }
 body.ttrss_main #toolbar-frame #toolbar i.log-alert {
   color: #ddba1c;
+  cursor: pointer;
 }
 body.ttrss_main #toolbar-frame #toolbar i {
   margin: 0 4px;
-- 
GitLab