From 7b1a868676b1556059a423220f97b26817659f90 Mon Sep 17 00:00:00 2001 From: Mo Bitar Date: Thu, 5 Jul 2018 21:10:30 -0500 Subject: [PATCH] Footer don't keep room state --- app/assets/javascripts/app/controllers/footer.js | 3 +-- .../javascripts/app/services/actionsManager.js | 2 +- .../javascripts/app/services/modelManager.js | 15 ++++++++------- 3 files changed, 10 insertions(+), 10 deletions(-) diff --git a/app/assets/javascripts/app/controllers/footer.js b/app/assets/javascripts/app/controllers/footer.js index 0232ad3da..ee3669cbe 100644 --- a/app/assets/javascripts/app/controllers/footer.js +++ b/app/assets/javascripts/app/controllers/footer.js @@ -136,8 +136,7 @@ angular.module('app') this.rooms = []; modelManager.addItemSyncObserver("room-bar", "SN|Component", (allItems, validItems, deletedItems, source) => { - var incomingRooms = allItems.filter((candidate) => {return candidate.area == "rooms"}); - this.rooms = _.uniq(this.rooms.concat(incomingRooms)).filter((candidate) => {return !candidate.deleted}); + this.rooms = modelManager.components.filter((candidate) => {return candidate.area == "rooms" && !candidate.deleted}); }); componentManager.registerHandler({identifier: "roomBar", areas: ["rooms", "modal"], activationHandler: (component) => { diff --git a/app/assets/javascripts/app/services/actionsManager.js b/app/assets/javascripts/app/services/actionsManager.js index f672adfed..d3383e52f 100644 --- a/app/assets/javascripts/app/services/actionsManager.js +++ b/app/assets/javascripts/app/services/actionsManager.js @@ -14,7 +14,7 @@ class ActionsManager { } get extensions() { - return this.modelManager.extensions; + return this.modelManager.validItemsForContentType("Extension"); } extensionsInContextOfItem(item) { diff --git a/app/assets/javascripts/app/services/modelManager.js b/app/assets/javascripts/app/services/modelManager.js index 65d27a0e0..e243a4d69 100644 --- a/app/assets/javascripts/app/services/modelManager.js +++ b/app/assets/javascripts/app/services/modelManager.js @@ -18,7 +18,7 @@ class ModelManager extends SFModelManager { super(); this.notes = []; this.tags = []; - this._extensions = []; + this.components = []; this.storageManager = storageManager; } @@ -27,7 +27,7 @@ class ModelManager extends SFModelManager { super.resetLocalMemory(); this.notes.length = 0; this.tags.length = 0; - this._extensions.length = 0; + this.components.length = 0; } findOrCreateTagByTitle(title) { @@ -58,9 +58,9 @@ class ModelManager extends SFModelManager { if(!_.find(this.notes, {uuid: item.uuid})) { this.notes.unshift(item); } - } else if(item.content_type == "Extension") { - if(!_.find(this._extensions, {uuid: item.uuid})) { - this._extensions.unshift(item); + } else if(item.content_type == "SN|Component") { + if(!_.find(this.components, {uuid: item.uuid})) { + this.components.unshift(item); } } } @@ -100,8 +100,8 @@ class ModelManager extends SFModelManager { _.remove(this.tags, {uuid: item.uuid}); } else if(item.content_type == "Note") { _.remove(this.notes, {uuid: item.uuid}); - } else if(item.content_type == "Extension") { - _.remove(this._extensions, {uuid: item.uuid}); + } else if(item.content_type == "SN|Component") { + _.remove(this.components, {uuid: item.uuid}); } } @@ -118,6 +118,7 @@ class ModelManager extends SFModelManager { return { "Note" : "note", "Tag" : "tag", + "SN|SmartTag": "smart tag", "Extension" : "action-based extension", "SN|Component" : "component", "SN|Editor" : "editor",