diff options
| author | Rene Ae <aehtyb@gmail.com> | 2015-12-04 20:32:44 -0600 |
|---|---|---|
| committer | Rene Ae <aehtyb@gmail.com> | 2015-12-04 20:32:44 -0600 |
| commit | 10efb0f7b426426057fed757fe3c851a249358dd (patch) | |
| tree | b80e285251d30fbca36220c932ef180c29c55dcf /StoneIsland/platforms/android/assets/www/js/sdk/auth.js | |
| parent | 015b58ff6845b5cb79b13fec109a37b4c10c7813 (diff) | |
android build
Diffstat (limited to 'StoneIsland/platforms/android/assets/www/js/sdk/auth.js')
| -rwxr-xr-x | StoneIsland/platforms/android/assets/www/js/sdk/auth.js | 129 |
1 files changed, 129 insertions, 0 deletions
diff --git a/StoneIsland/platforms/android/assets/www/js/sdk/auth.js b/StoneIsland/platforms/android/assets/www/js/sdk/auth.js new file mode 100755 index 00000000..87ce60ea --- /dev/null +++ b/StoneIsland/platforms/android/assets/www/js/sdk/auth.js @@ -0,0 +1,129 @@ +/* + headers: { + "x-yoox-appname": auth.appname, + "x-yoox-account-token": auth.access_token, + "x-yoox-device": auth.device, + "x-yoox-api-key": auth.apikey, + }, +*/ + +var auth = sdk.auth = (function(){ + var auth = {} + + auth.appname = is_iphone ? "native-iphone-stoneisland/1.0.0" : "native-android-stoneisland/1.0.0" + auth.apikey = "U2FsdGVkX18fThqg9bF0/ZgE9Jg948hn8O9EXli4B2729nAESCQaexv//M5+7+za" + auth.device = "smartphone" + + auth.access_token = "" + auth.user_id = -1 + + auth.next_view = null + auth.deferred_product = null + + // ios: integrate keychain api + // android: cordova.file.externalRootDirectory api + + auth.init = function(fn){ + console.log("AUTH INIT") + auth.get_user(function(){ + if (auth.logged_in()) { + sdk.account.checkin({ + success: function(data){ + fn && fn( auth.logged_in() ) + } + }) + auth.get_cart() + } + else { + fn && fn( auth.logged_in() ) + } + }) + } + + 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){ + auth.access_token = localStorage.getItem("yoox.access_token") || "" + auth.user_id = localStorage.getItem("yoox.user_id") || -1 + cb && cb() + } + auth.clear_user = function(cb){ + auth.access_token = "" + auth.user_id = -1 + localStorage.removeItem("yoox.access_token") + localStorage.removeItem("yoox.user_id") + 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){ + sdk.cart.token = localStorage.getItem("yoox.cart_token") || "" + sdk.cart.id = localStorage.getItem("yoox.cart_id") || -1 + cb && cb() + } + auth.clear_cart = function(cb){ + sdk.cart.token = "" + sdk.cart.id = -1 + localStorage.removeItem("yoox.cart_token") + localStorage.removeItem("yoox.cart_id") + cb && cb() + } + auth.create_cart = function(cb){ + if (auth.has_cart()) { return cb() } + sdk.cart.initialize({ + success: function(data){ + sdk.cart.set_user({ + success: function(){ + auth.set_cart(sdk.cart.id, sdk.cart.token, function(){ + cb && cb() + }) + } + }) + } + }) + } + auth.add_deferred_product_to_cart = function(cb){ + // auth.deferred_product + if (! auth.deferred_product) { + console.log("VV NO DEF PROD") + cb && cb() + return + } + sdk.cart.add_item({ + data: auth.deferred_product, + success: function(){ + console.log("ADDED ITEM") + cb && cb() + }, + error: function(data){ + console.log("ERROR ADDING ITEM", data) + cb && cb() + }, + }) + auth.deferred_product = null + app.header.increment_cart_count() + } + + auth.log_out = function(){ + auth.clear_user() + auth.clear_cart() + } + auth.logged_in = function(){ + return (auth.user_id && auth.user_id !== -1 && auth.user_id !== "undefined") + } + auth.has_cart = function(){ + return (sdk.cart.id && sdk.cart.id !== -1 && sdk.cart.id !== "undefined") + } + + return auth +})()
\ No newline at end of file |
