From 5987ac1aa47c1861f27533535ba6269b920df09b Mon Sep 17 00:00:00 2001 From: Mo Bitar Date: Mon, 16 Oct 2017 10:10:59 -0500 Subject: [PATCH] Persist showArchived flag --- app/assets/javascripts/app/frontend/controllers/notes.js | 4 +++- app/assets/javascripts/app/services/storageManager.js | 8 ++++++++ 2 files changed, 11 insertions(+), 1 deletion(-) diff --git a/app/assets/javascripts/app/frontend/controllers/notes.js b/app/assets/javascripts/app/frontend/controllers/notes.js index 751716119..7d72813da 100644 --- a/app/assets/javascripts/app/frontend/controllers/notes.js +++ b/app/assets/javascripts/app/frontend/controllers/notes.js @@ -34,6 +34,7 @@ angular.module('app.frontend') .controller('NotesCtrl', function (authManager, $timeout, $rootScope, modelManager, storageManager) { this.sortBy = storageManager.getItem("sortBy") || "created_at"; + this.showArchived = storageManager.getBooleanValue("showArchived") || false; this.sortDescending = this.sortBy != "title"; $rootScope.$on("editorFocused", function(){ @@ -63,7 +64,7 @@ angular.module('app.frontend') base += " title"; } - if(this.showArchived && !this.tag.archiveTag) { + if(this.showArchived && (!this.tag || !this.tag.archiveTag)) { base += " | Including archived" } @@ -72,6 +73,7 @@ angular.module('app.frontend') this.toggleShowArchived = function() { this.showArchived = !this.showArchived; + storageManager.setBooleanValue("showArchived", this.showArchived); } this.tagDidChange = function(tag, oldTag) { diff --git a/app/assets/javascripts/app/services/storageManager.js b/app/assets/javascripts/app/services/storageManager.js index 6540470e3..5c34e4e15 100644 --- a/app/assets/javascripts/app/services/storageManager.js +++ b/app/assets/javascripts/app/services/storageManager.js @@ -111,6 +111,14 @@ class StorageManager { return storage.getItem(key); } + setBooleanValue(key, value, vault) { + this.setItem(key, JSON.stringify(value), vault); + } + + getBooleanValue(key, vault) { + return JSON.parse(this.getItem(key, vault)); + } + removeItem(key, vault) { var storage = this.getVault(vault); storage.removeItem(key);