From 336282e0dd2fa1c7f4cbcba1c92e272fac76c327 Mon Sep 17 00:00:00 2001 From: Jules Laplace Date: Thu, 19 Nov 2015 14:51:22 -0500 Subject: store auth in localstorage, add scrollers --- StoneIsland/www/js/sdk/auth.js | 55 ++++++++++++++++++++++++++++++++++++++---- 1 file changed, 50 insertions(+), 5 deletions(-) (limited to 'StoneIsland/www/js/sdk/auth.js') 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 -- cgit v1.2.3-70-g09d2