diff options
author | Joram Wilander <jwawilander@gmail.com> | 2015-07-08 14:47:49 -0400 |
---|---|---|
committer | Joram Wilander <jwawilander@gmail.com> | 2015-07-08 14:47:49 -0400 |
commit | 11dde6c44bbb39e88969eb1691cfcf9e21f5ad08 (patch) | |
tree | 89098ffe15c6998bc652623b07ff7861efb6a4a5 /web/react/stores/channel_store.jsx | |
parent | a65b2a2df52286ec4018b923971366f89b917307 (diff) | |
parent | ce5639a6290bcb2403376cabfffe784283ac5b5a (diff) | |
download | chat-11dde6c44bbb39e88969eb1691cfcf9e21f5ad08.tar.gz chat-11dde6c44bbb39e88969eb1691cfcf9e21f5ad08.tar.bz2 chat-11dde6c44bbb39e88969eb1691cfcf9e21f5ad08.zip |
Merge pull request #150 from mattermost/mm-895
MM-895 Reorganization of browser storage.
Diffstat (limited to 'web/react/stores/channel_store.jsx')
-rw-r--r-- | web/react/stores/channel_store.jsx | 50 |
1 files changed, 34 insertions, 16 deletions
diff --git a/web/react/stores/channel_store.jsx b/web/react/stores/channel_store.jsx index 3f259bc7d..77ab69ef8 100644 --- a/web/react/stores/channel_store.jsx +++ b/web/react/stores/channel_store.jsx @@ -8,6 +8,8 @@ var assign = require('object-assign'); var Constants = require('../utils/constants.jsx'); var ActionTypes = Constants.ActionTypes; +var BrowserStore = require('../stores/browser_store.jsx'); + var CHANGE_EVENT = 'change'; var MORE_CHANGE_EVENT = 'change'; @@ -87,18 +89,18 @@ var ChannelStore = assign({}, EventEmitter.prototype, { }, setCurrentId: function(id) { if (id == null) - sessionStorage.removeItem("current_channel_id"); + BrowserStore.removeItem("current_channel_id"); else - sessionStorage.setItem("current_channel_id", id); + BrowserStore.setItem("current_channel_id", id); }, setLastVisitedName: function(name) { if (name == null) - localStorage.removeItem("last_visited_name"); + BrowserStore.removeItem("last_visited_name"); else - localStorage.setItem("last_visited_name", name); + BrowserStore.setItem("last_visited_name", name); }, getLastVisitedName: function() { - return localStorage.getItem("last_visited_name"); + return BrowserStore.getItem("last_visited_name"); }, resetCounts: function(id) { var cm = this._getChannelMembers(); @@ -115,7 +117,7 @@ var ChannelStore = assign({}, EventEmitter.prototype, { this._storeChannelMembers(cm); }, getCurrentId: function() { - return sessionStorage.getItem("current_channel_id"); + return BrowserStore.getItem("current_channel_id"); }, getCurrent: function() { var currentId = ChannelStore.getCurrentId(); @@ -163,54 +165,70 @@ var ChannelStore = assign({}, EventEmitter.prototype, { return extra; }, _storeChannels: function(channels) { - sessionStorage.setItem("channels", JSON.stringify(channels)); + BrowserStore.setItem("channels", JSON.stringify(channels)); }, _getChannels: function() { var channels = []; try { - channels = JSON.parse(sessionStorage.channels); + channels = JSON.parse(BrowserStore.getItem("channels")); } catch (err) { } + if (channels == null) { + channels = []; + } + return channels; }, _storeChannelMembers: function(channelMembers) { - sessionStorage.setItem("channel_members", JSON.stringify(channelMembers)); + BrowserStore.setItem("channel_members", JSON.stringify(channelMembers)); }, _getChannelMembers: function() { var members = {}; try { - members = JSON.parse(sessionStorage.channel_members); + members = JSON.parse(BrowserStore.getItem("channel_members")); } catch (err) { } + if (members == null) { + members = {}; + } + return members; }, _storeMoreChannels: function(channels) { - sessionStorage.setItem("more_channels", JSON.stringify(channels)); + BrowserStore.setItem("more_channels", JSON.stringify(channels)); }, _getMoreChannels: function() { var channels = []; try { - channels = JSON.parse(sessionStorage.more_channels); + channels = JSON.parse(BrowserStore.getItem("more_channels")); } catch (err) { - } + } + + if (channels == null) { + channels = []; + } return channels; }, _storeExtraInfos: function(extraInfos) { - sessionStorage.setItem("extra_infos", JSON.stringify(extraInfos)); + BrowserStore.setItem("extra_infos", JSON.stringify(extraInfos)); }, _getExtraInfos: function() { var members = {}; try { - members = JSON.parse(sessionStorage.extra_infos); + members = JSON.parse(BrowserStore.getItem("extra_infos")); } catch (err) { - } + } + + if (members == null) { + members = {}; + } return members; } |