summaryrefslogtreecommitdiff
path: root/public/js
diff options
context:
space:
mode:
authorSheogorath2018-03-23 15:39:16 +0100
committerSheogorath2018-03-23 19:46:38 +0100
commit32c578db083bf92a145728049343319990169726 (patch)
tree12e5d1e1c5654f411a3c6e96e844144cf7e951fa /public/js
parentfa4a8418afc57a45f71471ca7fd1adcd4d8d4cd4 (diff)
Persist nightmode so we can re-enable it
Right now the night mode is possible to set by a toggle in the menu bar but needs to be re-enabled on every document switch, reload, etc.. This is super annoying so we should keep this state in local storage or a cookie. Signed-off-by: Sheogorath <sheogorath@shivering-isles.com>
Diffstat (limited to 'public/js')
-rw-r--r--public/js/index.js21
1 files changed, 18 insertions, 3 deletions
diff --git a/public/js/index.js b/public/js/index.js
index 096f7fde..68fb2614 100644
--- a/public/js/index.js
+++ b/public/js/index.js
@@ -16,6 +16,7 @@ import toMarkdown from 'to-markdown'
import { saveAs } from 'file-saver'
import randomColor from 'randomcolor'
+import store from 'store'
import _ from 'lodash'
@@ -431,11 +432,12 @@ $(document).ready(function () {
clearMap()
}
checkEditorStyle()
+
+ /* cache dom references */
+ var $body = $('body')
+
/* we need this only on touch devices */
if (isTouchDevice) {
- /* cache dom references */
- var $body = $('body')
-
/* bind events */
$(document)
.on('focus', 'textarea, input', function () {
@@ -445,6 +447,12 @@ $(document).ready(function () {
$body.removeClass('fixfixed')
})
}
+
+ // Re-enable nightmode
+ if (store.get('nightMode') || Cookies.get('nightMode')) {
+ $body.addClass('night')
+ }
+
// showup
$().showUp('.navbar', {
upClass: 'navbar-hide',
@@ -1680,6 +1688,13 @@ function toggleNightMode () {
$body.addClass('night')
appState.nightMode = true
}
+ if (store.enabled) {
+ store.set('nightMode', !isActive)
+ } else {
+ Cookies.set('nightMode', !isActive, {
+ expires: 365
+ })
+ }
}
function emitPermission (_permission) {
if (_permission !== permission) {