diff --git a/libs/backendless.js b/libs/backendless.js index 86bf9340..de04600b 100644 --- a/libs/backendless.js +++ b/libs/backendless.js @@ -1446,10 +1446,14 @@ return new Async(success, error); }, - _parseResponse: function(data) { + _parseResponse: function(data, stayLoggedIn) { var user = new Backendless.User(); deepExtend(user, data); + if (stayLoggedIn) { + Backendless.LocalCache.set("stayLoggedIn", stayLoggedIn); + } + return user; }, @@ -1545,10 +1549,6 @@ Backendless.LocalCache.remove("current-user-id"); Backendless.LocalCache.set("stayLoggedIn", false); - if (Utils.isBoolean(stayLoggedIn)) { - Backendless.LocalCache.set("stayLoggedIn", stayLoggedIn); - } - var responder = extractResponder(arguments); var isAsync = responder != null; @@ -1569,13 +1569,12 @@ data : JSON.stringify(data) }); - if (isAsync) { - return result; + if (!isAsync && result) { + currentUser = this._parseResponse(result, stayLoggedIn === true); + result = this._getUserFromResponse(currentUser); } - currentUser = this._parseResponse(result); - - return this._getUserFromResponse(currentUser); + return result; }, _getUserFromResponse: function(user) {