You can use the HTML5 localStore object. For instance, when a user logs in and your server request is made, on the callback of a successful server request you can store any necessary data. Here is a snippet from one of my apps:
loginCallback: function(options, success, response) { this.mainSplash.setMasked(false); var responseOjbect = Ext.JSON.decode(response.responseText); if (responseOjbect.success) { this.clearLoginStorage(); //runs a function to clear some login storage values if (rememberme) { localStorage.setItem("rememberme", 1); } else { localStorage.setItem("rememberme", 0); } localStorage.setItem("userid", responseOjbect.userid); localStorage.setItem("first_name", responseOjbect.first_name); localStorage.setItem("last_name", responseOjbect.last_name); localStorage.setItem("appsettingone", responseOjbect.appsettingone); localStorage.setItem("appsettingtwo", responseOjbect.appsettingtwo); localStorage.setItem("setdate", new Date()); if (!this.dashboard) { Ext.create('myApp.view.Dashboard', { //additional config }); } Ext.Viewport.setActiveItem(this.dashboard); } else { Ext.Msg.alert('Attention', responseOjbect.errorMessage, Ext.emptyFn); } }
Once you have set your localStorage items, they can be retrieved or removed like so:
localStorage.getItem("user_id"); //retrieve localStorage.removeItem("userid"); //remove
So when you call your logout function, just don't remove any localStorage objects you want to keep. Then you can call localStorage.getItem("VALUE") to retrieve them upon next login