workarea-admin 3.4.36 → 3.4.41

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
- SHA1:
3
- metadata.gz: 8d18ceffd52a8ba4e7098980428f5f3ede7e0892
4
- data.tar.gz: 3b29ccc5629cb4fa9556ecf576602b18bee63b92
2
+ SHA256:
3
+ metadata.gz: ed933df39aba5d5b13faebdf4f3c6332aa85ad0ca50f6051f097d60ea25fba49
4
+ data.tar.gz: ff1cb5e0520f6d27cdf660bfc417ba883c9a8b091c5a73ca539694f45f265d3c
5
5
  SHA512:
6
- metadata.gz: d2633b07e8f39598b1ac66361bca9e4d2364555421f1ac40731c7cb471574dd67c674df3c6c7422db70b540a17d74990f40683dcea248b864759e03de2736e88
7
- data.tar.gz: 5213ec59a16eca3ad97335ebf98b1b9699f7753405593ad8fb6b16104df3363baf3a96b8a9aa93502c9aa3eda5a382a8cfb0b7619a2ca44d902cb814db07778f
6
+ metadata.gz: a9fd510c48c7e45c668cc0f8e38b9ebcfe9b259886ba01b98d37a52486af906497f81621f1de45f759d6b0135da773529829ad9b9cacc3f9c02526fee4e29596
7
+ data.tar.gz: 0ecda3e157ed89ea43c75ab5bcc0ad0dedec90ad66eb1238242fa00105588dc9ac9bde9a7d2fbb5ca2364dd95f8e72a61c47acca8a21f0d6c04dcaf0b73cbf12
@@ -20,6 +20,10 @@ $toggle-button-status-negative-color: $red !default;
20
20
  display: inline-block;
21
21
  }
22
22
 
23
+ .toggle-button--disabled {
24
+ opacity: 0.5;
25
+ }
26
+
23
27
  /**
24
28
  * 1. provides positiioning context for `.toggle-button__label`
25
29
  * 2. height + vertical margin = `.text-box` height
@@ -21,8 +21,9 @@ module Workarea
21
21
  end
22
22
 
23
23
  if attributes[:inventory].present?
24
- inventory = Inventory::Sku.find_or_create_by(id: variant.sku)
24
+ inventory = Inventory::Sku.find_or_initialize_by(id: variant.sku)
25
25
  inventory.available = attributes[:inventory]
26
+ inventory.policy = 'standard' if inventory.new_record?
26
27
  inventory.save!
27
28
  end
28
29
  end
@@ -27,7 +27,7 @@ module Workarea
27
27
  self.current_order = nil
28
28
 
29
29
  flash[:success] = t('workarea.admin.users.flash_messages.stopped')
30
- redirect_to user_path(previous_user_id)
30
+ redirect_back_or(user_path(previous_user_id))
31
31
  end
32
32
  end
33
33
  end
@@ -42,7 +42,7 @@ module Workarea
42
42
  def storefront_view_model
43
43
  @storefront_view_model ||= Storefront::ProductViewModel.wrap(
44
44
  model,
45
- @options
45
+ options
46
46
  )
47
47
  end
48
48
 
@@ -93,16 +93,13 @@ module Workarea
93
93
  end
94
94
  end
95
95
 
96
- def options
97
- variants.reduce({}) do |memo, variant|
96
+ def variant_details
97
+ variants.each_with_object({}) do |variant, memo|
98
98
  variant.details.each do |name, value|
99
99
  memo[name] ||= []
100
- memo[name] << value
101
- memo[name].flatten!
100
+ memo[name] += Array.wrap(value)
102
101
  memo[name].uniq!
103
102
  end
104
-
105
- memo
106
103
  end
107
104
  end
108
105
 
@@ -125,7 +122,7 @@ module Workarea
125
122
  end
126
123
 
127
124
  def insights
128
- @insights ||= Insights::ProductViewModel.wrap(model, @options)
125
+ @insights ||= Insights::ProductViewModel.wrap(model, options)
129
126
  end
130
127
 
131
128
  def inventory
@@ -25,7 +25,7 @@
25
25
  .product-images__image-group
26
26
  .product-images__image
27
27
  .product-images__image-summary
28
- .product-images__image-summary-container= image_tag product_image_url(@image, :small), alt: "#{@image.option} #{t('workarea.admin.catalog_product_images.edit.image')}", id: @image.option.parameterize, class: 'product-images__image-summary-image'
28
+ .product-images__image-summary-container= image_tag product_image_url(@image, :small), alt: "#{@image.option} #{t('workarea.admin.catalog_product_images.edit.image')}", class: 'product-images__image-summary-image'
29
29
 
30
30
  .section
31
31
  %h2= t('workarea.admin.catalog_product_images.edit.edit_image')
@@ -110,7 +110,7 @@
110
110
  %p.align-center= t('workarea.admin.fields.inventory')
111
111
 
112
112
  %span.heading.heading--3.heading--no-margin.align-center
113
- = model.options.keys.to_sentence
113
+ = model.variant_details.keys.to_sentence
114
114
  %p.align-center= t('workarea.admin.fields.options')
115
115
 
116
116
  = link_to catalog_product_variants_path(model), class: 'card__button' do
@@ -63,11 +63,6 @@
63
63
  .property
64
64
  = text_field_tag 'new_details[]', nil, id: nil, class: 'text-box text-box--i18n', title: t('workarea.admin.catalog_variants.edit.options.new_attribute_value'), placeholder: t('workarea.admin.catalog_variants.edit.options.new_attribute_value_placeholder')
65
65
  %span.property__note= t('workarea.admin.catalog_variants.edit.options.new_attribute_value_note')
66
- %span.property__note
67
- = t('workarea.admin.catalog_variants.edit.options.new_attribute_value_csv')
68
- = link_to '#csv-help', data: { tooltip: '' } do
69
- = inline_svg('workarea/admin/icons/help.svg', class: 'svg-icon svg-icon--small svg-icon--blue', title: t('workarea.admin.catalog_variants.edit.options.learn_more'))
70
- = render 'workarea/admin/shared/csv_formatting_tooltip'
71
66
  %td.align-center -
72
67
 
73
68
  .workflow-bar
@@ -55,11 +55,6 @@
55
55
  .property
56
56
  = text_field_tag 'new_details[]', nil, id: nil, class: 'text-box text-box--i18n', title: t('workarea.admin.catalog_variants.new.options.new_attribute_value'), placeholder: t('workarea.admin.catalog_variants.new.options.new_attribute_value_placeholder')
57
57
  %span.property__note= t('workarea.admin.catalog_variants.new.options.new_attribute_value_note')
58
- %span.property__note
59
- = t('workarea.admin.catalog_variants.new.options.new_attribute_value_csv')
60
- = link_to '#csv-help', data: { tooltip: '' } do
61
- = inline_svg('workarea/admin/icons/help.svg', class: 'svg-icon svg-icon--small svg-icon--blue', title: t('workarea.admin.catalog_variants.new.options.learn_more'))
62
- = render 'workarea/admin/shared/csv_formatting_tooltip'
63
58
  %td.align-center -
64
59
 
65
60
  .workflow-bar
@@ -7,7 +7,7 @@
7
7
  .grid.grid--middle
8
8
  .grid__cell.grid__cell--50
9
9
  - if content.show_areas?
10
- %span= content.name
10
+ %span #{t('workarea.admin.content.edit.current_area')}:
11
11
  = inline_svg('workarea/admin/icons/navigate_next.svg', class: 'svg-icon svg-icon--small svg-icon--white')
12
12
  = form_tag request.path, method: 'get', class: 'content-editor__area-select-form' do
13
13
  = select_tag 'area_id', options_for_select(content.area_options, content.current_area), data: { form_submitting_control: '' }
@@ -6,5 +6,5 @@
6
6
  #{local_time_ago(model.updated_at)}
7
7
  - else
8
8
  %span.summary__info-text-inactive= t('workarea.admin.navigation_menus.summary.inactive')
9
- %span.summary__info= t('workarea.admin.navigation_menus.summary.content_block', count: model.content.try(:blocks).size)
9
+ %span.summary__info= t('workarea.admin.navigation_menus.summary.content_block', count: model.content&.blocks&.size.to_i)
10
10
  %span.summary__type{ title: t('workarea.admin.navigation_menus.summary.type') }= t('workarea.admin.navigation_menus.summary.type')
@@ -5,7 +5,7 @@
5
5
  %span.discount__node
6
6
  %span.property.property--inline
7
7
  = text_field_tag 'discount[amount]', @discount.amount, class: 'text-box text-box--small', title: 'Amount of Discount', placeholder: '10', required: true
8
- %span.discount__node off products
8
+ %span.discount__node off the item's unit price
9
9
 
10
10
  .discount__node-line
11
11
  %p.discount__node-group
@@ -1,4 +1,4 @@
1
- .toggle-button{ data: data }
1
+ .toggle-button{ data: data, class: disabled ? 'toggle-button--disabled' : nil }
2
2
  .toggle-button__switch
3
3
  = radio_button_tag input_name, true, condition, disabled: disabled, class: 'toggle-button__input toggle-button__input--positive', title: title_true, id: "#{dom_id}_true"
4
4
  = label_tag "#{dom_id}_false", label_true, class: 'toggle-button__label toggle-button__label--positive', id: "#{dom_id}_false_label"
@@ -67,6 +67,7 @@
67
67
  = link_to current_impersonation.email, user_path(current_impersonation)
68
68
  %br
69
69
  = form_tag impersonations_path, method: 'delete', data: { disable_delete_confirmation: '' } do
70
+ = hidden_field_tag :return_to, return_to
70
71
  = button_tag t('workarea.admin.toolbar.stop_impersonation'), class: 'text-button text-button--destroy'
71
72
 
72
73
  - if allow_pricing_override?
@@ -485,7 +485,6 @@ en:
485
485
  new_attribute_name_note: 'Example: Material'
486
486
  new_attribute_name_placeholder: New Attribute Name
487
487
  new_attribute_value: New Attribute Value
488
- new_attribute_value_csv: 'Comma separated: just, like, this'
489
488
  new_attribute_value_note: 'Example: Cotton'
490
489
  new_attribute_value_placeholder: New Attribute Value
491
490
  remove: Remove
@@ -524,7 +523,6 @@ en:
524
523
  new_attribute_name_note: 'Example: Material'
525
524
  new_attribute_name_placeholder: New Attribute Name
526
525
  new_attribute_value: New Attribute Value
527
- new_attribute_value_csv: 'Comma separated: just, like, this'
528
526
  new_attribute_value_note: 'Example: Cotton'
529
527
  new_attribute_value_placeholder: New Attribute Value
530
528
  remove: Remove
@@ -664,6 +662,7 @@ en:
664
662
  loading: Loading...
665
663
  preview: Preview
666
664
  title: Content for %{content}
665
+ current_area: 'Current Area'
667
666
  form:
668
667
  all_blocks: All blocks
669
668
  cancel: Cancel
@@ -3513,7 +3512,7 @@ en:
3513
3512
  changes_saved: Your changes have been saved
3514
3513
  saved: Your changes have been saved
3515
3514
  started: You are now browsing as %{email}
3516
- stopped: Impersonation for this user has been stopped.
3515
+ stopped: Impersonation has been stopped, you are now browsing as your account.
3517
3516
  created: This account has been created
3518
3517
  error: There was an error saving this account
3519
3518
  index:
@@ -70,7 +70,14 @@ module Workarea
70
70
  post admin.impersonations_path, params: { user_id: @user.id }
71
71
  delete admin.impersonations_path
72
72
 
73
- assert(response.redirect?)
73
+ assert_redirected_to(admin.user_path(@user.id))
74
+ assert_equal(previous_user_id, response_cookies['user_id'])
75
+ assert(session['admin_id'].blank?)
76
+
77
+ post admin.impersonations_path, params: { user_id: @user.id }
78
+ delete admin.impersonations_path(return_to: '/foo')
79
+
80
+ assert_redirected_to('/foo')
74
81
  assert_equal(previous_user_id, response_cookies['user_id'])
75
82
  assert(session['admin_id'].blank?)
76
83
  end
@@ -34,12 +34,9 @@ module Workarea
34
34
  click_button 'Stop Impersonation'
35
35
  end
36
36
 
37
- assert_equal(admin.user_path(user), current_path)
37
+ assert_equal(storefront.root_path, current_path)
38
38
  assert(page.has_content?('Success'))
39
39
 
40
- find('.view').hover # Ensure tooltipster menu isn't open
41
- assert(page.has_content?('bcrouse@workarea.com'))
42
-
43
40
  visit storefront.users_account_path
44
41
  assert(page.has_no_content?('impersonated@workarea.com'))
45
42
 
@@ -23,7 +23,7 @@ module Workarea
23
23
  end
24
24
  end
25
25
 
26
- def test_options
26
+ def test_variant_details
27
27
  @view_model.variants.build(
28
28
  sku: 'SKU1',
29
29
  name: 'name',
@@ -42,7 +42,7 @@ module Workarea
42
42
 
43
43
  assert_equal(
44
44
  { 'Color' => ['Red', 'Black', 'White'], 'Size' => ['S', 'M', 'L'] },
45
- @view_model.options
45
+ @view_model.variant_details
46
46
  )
47
47
  end
48
48
 
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: workarea-admin
3
3
  version: !ruby/object:Gem::Version
4
- version: 3.4.36
4
+ version: 3.4.41
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-07-07 00:00:00.000000000 Z
11
+ date: 2020-09-30 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: workarea-core
@@ -16,28 +16,28 @@ dependencies:
16
16
  requirements:
17
17
  - - '='
18
18
  - !ruby/object:Gem::Version
19
- version: 3.4.36
19
+ version: 3.4.41
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.36
26
+ version: 3.4.41
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: workarea-storefront
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
31
  - - '='
32
32
  - !ruby/object:Gem::Version
33
- version: 3.4.36
33
+ version: 3.4.41
34
34
  type: :runtime
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
38
  - - '='
39
39
  - !ruby/object:Gem::Version
40
- version: 3.4.36
40
+ version: 3.4.41
41
41
  description: Provides site administration functionality for the Workarea Commerce
42
42
  Platform.
43
43
  email:
@@ -1401,8 +1401,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
1401
1401
  - !ruby/object:Gem::Version
1402
1402
  version: '0'
1403
1403
  requirements: []
1404
- rubyforge_project:
1405
- rubygems_version: 2.6.14.1
1404
+ rubygems_version: 3.0.3
1406
1405
  signing_key:
1407
1406
  specification_version: 4
1408
1407
  summary: Admin for the Workarea Commerce Platform