Sha256: 24aa178a62d5016196563abee4a68ea7fe10d9cfeec0498ffe2a13f2c850aa25
Contents?: true
Size: 1.38 KB
Versions: 3
Compression:
Stored size: 1.38 KB
Contents
//= require spree/frontend/api/main SpreeAPI.Storefront.createCart = function (successCallback, failureCallback) { fetch(Spree.routes.api_v2_storefront_cart_create, { method: 'POST', headers: SpreeAPI.prepareHeaders() }).then(function (response) { switch (response.status) { case 422: response.json().then(function (json) { failureCallback(json.error) }) break case 500: SpreeAPI.handle500error() break case 201: response.json().then(function (json) { SpreeAPI.orderToken = json.data.attributes.token successCallback() }) break } }) } SpreeAPI.Storefront.addToCart = function (variantId, quantity, options, successCallback, failureCallback) { fetch(Spree.routes.api_v2_storefront_cart_add_item, { method: 'POST', headers: SpreeAPI.prepareHeaders({ 'X-Spree-Order-Token': SpreeAPI.orderToken }), body: JSON.stringify({ variant_id: variantId, quantity: quantity, options: options }) }).then(function (response) { switch (response.status) { case 422: response.json().then(function (json) { failureCallback(json.error) }) break case 500: SpreeAPI.handle500error() break case 200: response.json().then(function (json) { successCallback(json.data) }) break } }) }
Version data entries
3 entries across 3 versions & 1 rubygems