aboutsummaryrefslogtreecommitdiffstats
path: root/js/dashboard.js
diff options
context:
space:
mode:
authorAlessio Vanni <vannilla@firemail.cc>2019-02-19 21:06:09 +0100
committerAlessio Vanni <vannilla@firemail.cc>2019-02-19 21:06:09 +0100
commitfe2f8acc8210c2ddead4621797b47106a9b38f5b (patch)
tree5fb103d45d7e4345f56fc068ce8173b82fa7051f /js/dashboard.js
downloadematrix-fe2f8acc8210c2ddead4621797b47106a9b38f5b.tar.lz
ematrix-fe2f8acc8210c2ddead4621797b47106a9b38f5b.tar.xz
ematrix-fe2f8acc8210c2ddead4621797b47106a9b38f5b.zip
Fork uMatrix
Pretty much just changing the name and the copyright.
Diffstat (limited to 'js/dashboard.js')
-rw-r--r--js/dashboard.js56
1 files changed, 56 insertions, 0 deletions
diff --git a/js/dashboard.js b/js/dashboard.js
new file mode 100644
index 0000000..5ff6ebc
--- /dev/null
+++ b/js/dashboard.js
@@ -0,0 +1,56 @@
+/*******************************************************************************
+
+ ηMatrix - a browser extension to black/white list requests.
+ Copyright (C) 2014-2019 Raymond Hill
+ Copyright (C) 2019 Alessio Vanni
+
+ This program is free software: you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation, either version 3 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program. If not, see {http://www.gnu.org/licenses/}.
+
+ uMatrix Home: https://github.com/gorhill/uMatrix
+*/
+
+/* global uDom */
+
+'use strict';
+
+/******************************************************************************/
+
+(function() {
+
+ var loadDashboardPanel = function(hash) {
+ var button = uDom(hash);
+ var url = button.attr('data-dashboard-panel-url');
+ uDom('iframe').attr('src', url);
+ uDom('.tabButton').forEach(function(button){
+ button.toggleClass(
+ 'selected',
+ button.attr('data-dashboard-panel-url') === url
+ );
+ });
+ };
+
+ var onTabClickHandler = function() {
+ loadDashboardPanel(window.location.hash);
+ };
+
+ uDom.onLoad(function() {
+ window.addEventListener('hashchange', onTabClickHandler);
+ var hash = window.location.hash;
+ if ( hash.length < 2 ) {
+ hash = '#settings';
+ }
+ loadDashboardPanel(hash);
+ });
+
+})();