X-Git-Url: http://spangdorfia.com/code/?p=kismet-logviewer.git;a=blobdiff_plain;f=logviewer%2Fstatic%2Fjs%2Fkismet.ui.theme.js;fp=logviewer%2Fstatic%2Fjs%2Fkismet.ui.theme.js;h=c9d1ede88b5f9ea525a129c29ebf3dda646ae525;hp=0000000000000000000000000000000000000000;hb=d4fe9834a60132f118a1e8ee68e5221b28e10ccc;hpb=662453a92f419012cde6a79dc38df89c5be4d91b diff --git a/logviewer/static/js/kismet.ui.theme.js b/logviewer/static/js/kismet.ui.theme.js new file mode 100644 index 0000000..c9d1ede --- /dev/null +++ b/logviewer/static/js/kismet.ui.theme.js @@ -0,0 +1,92 @@ +/* jshint browser: true */ +/* global define, module */ +( // Module boilerplate to support browser globals and browserify and AMD. + typeof define === "function" ? function (m) { define("kismet_theme", m); } : + typeof exports === "object" ? function (m) { module.exports = m(); } : + function(m){ this.kismet_theme = m(); } +)(function () { + "use strict"; + + var exports = {}; + + var storage = Storages.localStorage; + + if (!storage.isSet('kismet.ui.theme') || (storage.isSet('kismet.ui.theme') && + storage.get('kismet.ui.theme') == 'dark')) { + + $('head').append(''); + $('head').append(''); + $('head').append(''); + + exports.theme = 'dark'; + + exports.page_background = '#222'; + + exports.sparkline_main = '#FFF'; + exports.sparkline_multi_a = '#F7FF00'; + exports.sparkline_multi_b = '#00FF00'; + + Chart.defaults.backgroundColor = '#333'; + Chart.defaults.borderColor = '#555'; + Chart.defaults.color = '#FFF'; + + exports.graphBasicColor = 'rgba(255, 255, 255, 1)'; + exports.graphBasicBackgroundColor = 'rgba(200, 200, 200, 0.33)', + + document.documentElement.setAttribute('data-theme', 'dark'); + } else { + $('head').append(''); + $('head').append(''); + $('head').append(''); + $('head').append(''); + + exports.theme = 'light'; + + exports.page_background = '#FFF'; + exports.sparkline_multi_a = '#C70039'; + exports.sparkline_multi_b = '#002EFF'; + + exports.sparkline_main = '#000'; + + exports.graphBasicColor = 'rgba(160, 160, 160, 1)'; + exports.graphBasicBackgroundColor = 'rgba(100, 100, 100, 0.33)'; + + // document.documentElement.setAttribute('data-theme', 'light'); + } + + (function ($) { + var element = null; + var ticon; + + $.fn.thememode = function(_data, inopt) { + element = $(this); + + ticon = $('i.icon', this); + if (ticon.length == 0) { + ticon = $('', { + class: "icon fa clickable kg-icon-base" + }) + .on('click', () => { + if (exports.theme === 'dark') { + storage.set('kismet.ui.theme', 'light'); + location.reload(); + } else { + storage.set('kismet.ui.theme', 'dark'); + location.reload(); + } + }); + + if (exports.theme === 'dark') { + ticon.addClass('fa-moon-o'); + } else { + ticon.addClass('fa-lightbulb-o'); + } + } + + element.append(ticon); + }; + + }(jQuery)); + + return exports; +});