workarea-storefront 3.4.40 → 3.4.45

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 8ac484ab96c9e5827d426a6d60a7ebf0936382fa991741f84a90456b8c59b326
4
- data.tar.gz: 01acc88e15e6f6b1422e8d8a7e53923a87f5458e4c16dcfb9a65774c367b2054
3
+ metadata.gz: 79997ad2dc6268254d6b3c331346ccd0fba6d88563720f34d3d511f203d0a644
4
+ data.tar.gz: 68811cc13b62ec692c4e0128333477fb1c125b24b449beacad48fd2ab99b634c
5
5
  SHA512:
6
- metadata.gz: 07fbcbddabaa4685624f67c75c22917ea92f199292fd20d3f6b88063d583684f18cf2c18a7a4ce2f09dce7215921b6408676987d868e9bf741e74c8570a627cc
7
- data.tar.gz: 1ed115cf6f0b00a249636686d5c11b8c504858459d5eaaadcbe84331a150c756cb357313ea6e2e0165cbbaa5b116aecb9869d03f893708c93fdf45df8c2af259
6
+ metadata.gz: 52904468d65dd0c581c2c9a1e7304434c4312969564981c4830a24feac3a4ec075f65de7742653d118bb2d3c48f62806463c1cd22d97444abb3d7680819aa032
7
+ data.tar.gz: b1a4d9f022455601c3b91b0de6a786f9cea15ba7f9e9210a0c1343827a4e0b693ab8b63c1e34b27138c4e787c187cac21462a5adf3e5a4f90b2235bfd893a12c
@@ -5,7 +5,7 @@ WORKAREA.registerModule('dialogButtons', (function () {
5
5
  'use strict';
6
6
 
7
7
  var isSrc = function (fileName) {
8
- var extension = fileName.split('.')[1];
8
+ var extension = WORKAREA.url.parse(fileName).path.split('.').pop();
9
9
 
10
10
  return _.includes(WORKAREA.config.imageFileExtensions, extension);
11
11
  },
@@ -11,13 +11,14 @@ module Workarea
11
11
  after_action :check_inventory, except: :create
12
12
 
13
13
  def create
14
+ @cart = CartViewModel.new(current_order, view_model_options)
15
+
14
16
  # TODO: for v4, use AddItemToCart for this.
15
17
  if current_order.add_item(item_params.to_h.merge(item_details.to_h))
16
18
  check_inventory
17
19
 
18
20
  Pricing.perform(current_order, current_shippings)
19
21
 
20
- @cart = CartViewModel.new(current_order, view_model_options)
21
22
  @item = OrderItemViewModel.wrap(
22
23
  current_order.items.find_existing(
23
24
  item_params[:sku],
@@ -1,7 +1,6 @@
1
1
  module Workarea
2
2
  module Storefront
3
3
  class ProductViewModel < ApplicationViewModel
4
-
5
4
  def self.wrap(model, options = {})
6
5
  if model.is_a?(Enumerable)
7
6
  model.map { |m| wrap(m, options) }
@@ -11,6 +10,8 @@ module Workarea
11
10
  else
12
11
  new(model, options)
13
12
  end
13
+ rescue NameError
14
+ new(model, options)
14
15
  end
15
16
 
16
17
  def breadcrumbs
@@ -47,6 +47,18 @@ module Workarea
47
47
  assert_equal(5.to_m, order.items.first.total_price)
48
48
  end
49
49
 
50
+ def test_fail_to_add_an_item
51
+ post storefront.cart_items_path,
52
+ params: {
53
+ product_id: @product.id,
54
+ sku: 'SKU1',
55
+ quantity: -1
56
+ }
57
+
58
+ assert_response(:success)
59
+ assert_empty(Order.all)
60
+ end
61
+
50
62
  def test_adding_product_with_shared_skus
51
63
  product_2 = Catalog::Product.create!(name: 'Product', variants: [{ sku: 'SKU1' }])
52
64
 
@@ -15,6 +15,14 @@ module Workarea
15
15
  view_model = ProductViewModel.wrap(@product, one: '1')
16
16
  assert_instance_of(ProductTemplates::OptionSelectsViewModel, view_model)
17
17
  assert_equal('1', view_model.options[:one])
18
+
19
+ Workarea.with_config do |config|
20
+ config.product_templates << :no_view_model
21
+ @product.template = 'no_view_model'
22
+ view_model = ProductViewModel.wrap(@product, one: '1')
23
+
24
+ assert_kind_of(ProductViewModel, view_model)
25
+ end
18
26
  end
19
27
 
20
28
  def test_cache_key
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: workarea-storefront
3
3
  version: !ruby/object:Gem::Version
4
- version: 3.4.40
4
+ version: 3.4.45
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ben Crouse
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2020-09-16 00:00:00.000000000 Z
11
+ date: 2021-01-20 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: workarea-core
@@ -16,14 +16,14 @@ dependencies:
16
16
  requirements:
17
17
  - - '='
18
18
  - !ruby/object:Gem::Version
19
- version: 3.4.40
19
+ version: 3.4.45
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
24
  - - '='
25
25
  - !ruby/object:Gem::Version
26
- version: 3.4.40
26
+ version: 3.4.45
27
27
  description: Provides user-facing ecommerce storefront functionality for the Workarea
28
28
  Commerce Platform.
29
29
  email:
@@ -736,7 +736,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
736
736
  - !ruby/object:Gem::Version
737
737
  version: '0'
738
738
  requirements: []
739
- rubygems_version: 3.0.3
739
+ rubygems_version: 3.2.3
740
740
  signing_key:
741
741
  specification_version: 4
742
742
  summary: Storefront for the Workarea Commerce Platform