summaryrefslogtreecommitdiffstats
path: root/web/react/components
diff options
context:
space:
mode:
authorJoram Wilander <jwawilander@gmail.com>2015-07-08 14:47:49 -0400
committerJoram Wilander <jwawilander@gmail.com>2015-07-08 14:47:49 -0400
commit11dde6c44bbb39e88969eb1691cfcf9e21f5ad08 (patch)
tree89098ffe15c6998bc652623b07ff7861efb6a4a5 /web/react/components
parenta65b2a2df52286ec4018b923971366f89b917307 (diff)
parentce5639a6290bcb2403376cabfffe784283ac5b5a (diff)
downloadchat-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/components')
-rw-r--r--web/react/components/channel_loader.jsx4
-rw-r--r--web/react/components/delete_post_modal.jsx7
-rw-r--r--web/react/components/edit_post_modal.jsx2
-rw-r--r--web/react/components/login.jsx5
-rw-r--r--web/react/components/signup_team_complete.jsx11
-rw-r--r--web/react/components/signup_user_complete.jsx6
6 files changed, 21 insertions, 14 deletions
diff --git a/web/react/components/channel_loader.jsx b/web/react/components/channel_loader.jsx
index 537a41d03..1b389aa1d 100644
--- a/web/react/components/channel_loader.jsx
+++ b/web/react/components/channel_loader.jsx
@@ -5,12 +5,16 @@
to the server on page load. This is to prevent other React controls from spamming
AsyncClient with requests. */
+var BrowserStore = require('../stores/browser_store.jsx');
var AsyncClient = require('../utils/async_client.jsx');
var SocketStore = require('../stores/socket_store.jsx');
var Constants = require('../utils/constants.jsx');
module.exports = React.createClass({
componentDidMount: function() {
+ // Initalize stores
+ BrowserStore.initalize();
+
/* Start initial aysnc loads */
AsyncClient.getMe();
AsyncClient.getPosts(true);
diff --git a/web/react/components/delete_post_modal.jsx b/web/react/components/delete_post_modal.jsx
index c88b548d1..fefac12d7 100644
--- a/web/react/components/delete_post_modal.jsx
+++ b/web/react/components/delete_post_modal.jsx
@@ -3,6 +3,7 @@
var Client = require('../utils/client.jsx');
var PostStore = require('../stores/post_store.jsx');
+var BrowserStore = require('../stores/browser_store.jsx');
var utils = require('../utils/utils.jsx');
var AsyncClient = require('../utils/async_client.jsx');
var AppDispatcher = require('../dispatcher/app_dispatcher.jsx');
@@ -54,9 +55,9 @@ module.exports = React.createClass({
var self = this;
$(this.refs.modal.getDOMNode()).on('show.bs.modal', function(e) {
var newState = {};
- if(sessionStorage.getItem('edit_state_transfer')) {
- newState = JSON.parse(sessionStorage.getItem('edit_state_transfer'));
- sessionStorage.removeItem('edit_state_transfer');
+ if(BrowserStore.getItem('edit_state_transfer')) {
+ newState = JSON.parse(BrowserStore.getItem('edit_state_transfer'));
+ BrowserStore.removeItem('edit_state_transfer');
} else {
var button = e.relatedTarget;
newState = { title: $(button).attr('data-title'), channel_id: $(button).attr('data-channelid'), post_id: $(button).attr('data-postid'), comments: $(button).attr('data-comments') };
diff --git a/web/react/components/edit_post_modal.jsx b/web/react/components/edit_post_modal.jsx
index 24c2d7322..d741e189b 100644
--- a/web/react/components/edit_post_modal.jsx
+++ b/web/react/components/edit_post_modal.jsx
@@ -13,7 +13,7 @@ module.exports = React.createClass({
if (updatedPost.message.length === 0) {
var tempState = this.state;
delete tempState.editText;
- sessionStorage.setItem('edit_state_transfer', JSON.stringify(tempState));
+ BrowserStore.setItem('edit_state_transfer', JSON.stringify(tempState));
$("#edit_post").modal('hide');
$("#delete_post").modal('show');
return;
diff --git a/web/react/components/login.jsx b/web/react/components/login.jsx
index 3b6f96c2d..74c7d4065 100644
--- a/web/react/components/login.jsx
+++ b/web/react/components/login.jsx
@@ -7,6 +7,7 @@
var utils = require('../utils/utils.jsx');
var client = require('../utils/client.jsx');
var UserStore = require('../stores/user_store.jsx');
+var BrowserStore = require('../stores/browser_store.jsx');
var FindTeamDomain = React.createClass({
@@ -21,7 +22,7 @@ var FindTeamDomain = React.createClass({
return;
}
- if (!utils.isLocalStorageSupported()) {
+ if (!BrowserStore.isLocalStorageSupported()) {
state.server_error = "This service requires local storage to be enabled. Please enable it or exit private browsing.";
this.setState(state);
return;
@@ -114,7 +115,7 @@ module.exports = React.createClass({
return;
}
- if (!utils.isLocalStorageSupported()) {
+ if (!BrowserStore.isLocalStorageSupported()) {
state.server_error = "This service requires local storage to be enabled. Please enable it or exit private browsing.";
this.setState(state);
return;
diff --git a/web/react/components/signup_team_complete.jsx b/web/react/components/signup_team_complete.jsx
index 587d8cb82..500ee231e 100644
--- a/web/react/components/signup_team_complete.jsx
+++ b/web/react/components/signup_team_complete.jsx
@@ -5,11 +5,12 @@
var utils = require('../utils/utils.jsx');
var client = require('../utils/client.jsx');
var UserStore = require('../stores/user_store.jsx');
-var constants = require('../utils/constants.jsx')
+var BrowserStore = require('../stores/browser_store.jsx');
+var constants = require('../utils/constants.jsx');
WelcomePage = React.createClass({
submitNext: function (e) {
- if (!utils.isLocalStorageSupported()) {
+ if (!BrowserStore.isLocalStorageSupported()) {
this.setState({ storage_error: "This service requires local storage to be enabled. Please enable it or exit private browsing."} );
return;
}
@@ -32,7 +33,7 @@ WelcomePage = React.createClass({
this.setState(state);
return;
}
- else if (!utils.isLocalStorageSupported()) {
+ else if (!BrowserStore.isLocalStorageSupported()) {
state.email_error = "This service requires local storage to be enabled. Please enable it or exit private browsing.";
this.setState(state);
return;
@@ -595,7 +596,7 @@ PasswordPage = React.createClass({
module.exports = React.createClass({
updateParent: function(state, skipSet) {
- localStorage.setItem(this.props.hash, JSON.stringify(state));
+ BrowserStore.setGlobalItem(this.props.hash, JSON.stringify(state));
if (!skipSet) {
this.setState(state);
@@ -604,7 +605,7 @@ module.exports = React.createClass({
getInitialState: function() {
var props = null;
try {
- props = JSON.parse(localStorage.getItem(this.props.hash));
+ props = JSON.parse(BrowserStore.getGlobalItem(this.props.hash));
}
catch(parse_error) {
}
diff --git a/web/react/components/signup_user_complete.jsx b/web/react/components/signup_user_complete.jsx
index b9f32f0bc..124e617bd 100644
--- a/web/react/components/signup_user_complete.jsx
+++ b/web/react/components/signup_user_complete.jsx
@@ -5,7 +5,7 @@
var utils = require('../utils/utils.jsx');
var client = require('../utils/client.jsx');
var UserStore = require('../stores/user_store.jsx');
-
+var BrowserStore = require('../stores/browser_store.jsx');
module.exports = React.createClass({
handleSubmit: function(e) {
@@ -53,7 +53,7 @@ module.exports = React.createClass({
UserStore.setLastEmail(this.state.user.email);
UserStore.setCurrentUser(data);
if (this.props.hash > 0)
- localStorage.setItem(this.props.hash, JSON.stringify({wizard: "finished"}));
+ BrowserStore.setGlobalItem(this.props.hash, JSON.stringify({wizard: "finished"}));
window.location.href = '/channels/town-square';
}.bind(this),
function(err) {
@@ -75,7 +75,7 @@ module.exports = React.createClass({
getInitialState: function() {
var props = null;
try {
- props = JSON.parse(localStorage.getItem(this.props.hash));
+ props = JSON.parse(BrowserStore.getGlobalItem(this.props.hash));
}
catch(parse_error) {
}