summaryrefslogtreecommitdiff
path: root/StoneIsland/www/js/sdk/auth.js
diff options
context:
space:
mode:
Diffstat (limited to 'StoneIsland/www/js/sdk/auth.js')
-rw-r--r--StoneIsland/www/js/sdk/auth.js55
1 files changed, 50 insertions, 5 deletions
diff --git a/StoneIsland/www/js/sdk/auth.js b/StoneIsland/www/js/sdk/auth.js
index 134107c2..95a1dc56 100644
--- a/StoneIsland/www/js/sdk/auth.js
+++ b/StoneIsland/www/js/sdk/auth.js
@@ -20,21 +20,66 @@ var auth = sdk.auth = (function(){
// ios: integrate keychain api
// android: cordova.file.externalRootDirectory api
- auth.set_user = function(user_id, access_token){
- // persist user data
- auth.user_id = user_id
+ auth.init = function(fn){
+ auth.get_user(function(){
+ if (auth.logged_in()) {
+ auth.get_cart()
+ auth.view_logged_in()
+ }
+ else {
+ auth.view_logged_out()
+ }
+ fn && fn()
+ })
+ }
+
+ auth.set_user = function(user_id, access_token, cb){
auth.access_token = access_token
+ auth.user_id = user_id
+
+ localStorage.setItem("yoox.access_token", access_token)
+ localStorage.setItem("yoox.user_id", user_id)
+ cb && cb()
}
auth.get_user = function(cb){
- // fetch user data
+ access_token = localStorage.getItem("yoox.access_token") || ""
+ user_id = localStorage.getItem("yoox.user_id") || -1
+ cb && cb()
+ }
+
+ auth.set_cart = function(cart_id, cart_token, cb){
+ localStorage.setItem("yoox.cart_token", cart_token)
+ localStorage.setItem("yoox.cart_id", cart_id)
+ cb && cb()
+ }
+ auth.get_cart = function(cb){
+ cart.token = localStorage.getItem("yoox.cart_token") || ""
+ cart.id = localStorage.getItem("yoox.cart_id") || -1
+ cb && cb()
}
+
+ auth.view_logged_in = function(){
+ $("#nav .login").hide()
+ $("#nav .account").show()
+ }
+ auth.view_logged_out = function(){
+ $("#nav .login").show()
+ $("#nav .account").hide()
+ }
+
auth.log_out = function(){
- auth.user_id = -1
auth.access_token = ""
+ auth.user_id = -1
+ cart.token = ""
+ cart.id = -1
+ auth.view_logged_out()
}
auth.logged_in = function(){
return (auth.user_id !== -1)
}
+ auth.has_cart = function(){
+ return (cart.id !== -1)
+ }
return auth
})() \ No newline at end of file