effective_resources 2.20.1 → 2.20.3

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: d425bc9d1bc016b9979350a67a3dbeb8432d292bf627efcf5c01ac0512587b24
4
- data.tar.gz: 678f168202e93a74102a713b39a57de79531c7c9cc36ac3f5e9b210657749592
3
+ metadata.gz: 00f36eb36567fbb4037e4f7858d4815f9c0cd75631757a9822ffdbbb3b7697dd
4
+ data.tar.gz: 106768d6e545106f1a3e697005d4851aa64bd1ba5625fb8efb469ea50301fd3a
5
5
  SHA512:
6
- metadata.gz: ad93fbed04f488d6ba4061d9db1cc72e75831fbf083949576365d6046af692a3149f28aa4361285f37dbc4099a221a17777232a3263156a218394e4283b75137
7
- data.tar.gz: c2ba9f5df09a3ad3bb6693d8501bbe11c1c53576d68b844e9fab620d92531847ccd172a81bf2881ec571acc44cabb944f7bffa81508c7e143c532accb25bf497
6
+ metadata.gz: 8b5715e8e8650b69ec84b1de66b5d5f2f4422ee69c1cdbf25fff7395d001e4a7032bdfc6887c9c6a30a166b850d938ca485fd5bd272f7bf66c321363a3612296
7
+ data.tar.gz: b81cbf492c0bec23828f1e6778c2c62203fb3cd918fd16259dc6cf17deacf8bb16da427c2d872e1509b206a9c9367963feeb520336d6286bfdc0df48ce2ff04d
@@ -47,10 +47,27 @@ module ActsAsPurchasableWizard
47
47
  submit_fees
48
48
  end
49
49
 
50
+ def build_effective_order
51
+ if EffectiveOrders.organization_enabled? && respond_to?(:organization) # New style
52
+ orders.build(organization: organization)
53
+ else
54
+ orders.build(user: owner) # This is polymorphic user, might be an organization. Old style.
55
+ end
56
+ end
57
+
50
58
  def find_or_build_submit_order
51
- order = submit_order || orders.build(user: owner) # This is polymorphic user, might be an organization
52
- order = orders.build(user: owner) if order.declined? # Make a new order, if the previous one was declined
59
+ order = submit_order || build_effective_order()
60
+ order = build_effective_order() if order.declined? # Make a new order, if the previous one was declined
53
61
 
62
+ # Update the order with the current owner
63
+ if EffectiveOrders.organization_enabled? && respond_to?(:organization)
64
+ order.organization = organization
65
+ else
66
+ # A membership could go from individual to organization
67
+ order.user = owner
68
+ end
69
+
70
+ # Consider fees
54
71
  fees = submit_fees().reject { |fee| fee.marked_for_destruction? }
55
72
 
56
73
  # Make sure all Fees are valid
@@ -58,14 +75,12 @@ module ActsAsPurchasableWizard
58
75
  raise("expected a valid fee but #{fee.id} had errors #{fee.errors.inspect}") unless fee.valid?
59
76
  end
60
77
 
61
- # A membership could go from individual to organization
62
- order.user = owner
63
-
64
78
  # Adds fees, but does not overwrite any existing price.
65
79
  fees.each do |fee|
66
80
  order.add(fee) unless order.purchasables.include?(fee)
67
81
  end
68
82
 
83
+ # Remove any order items that no longer have fees for them
69
84
  order.order_items.each do |order_item|
70
85
  fee = fees.find { |fee| fee == order_item.purchasable }
71
86
  order.remove(order_item) unless fee.present?
@@ -166,6 +166,10 @@ module ActsAsWizard
166
166
  has_completed_step?(required_steps.last)
167
167
  end
168
168
 
169
+ def start_step_requires_authenticated_user?
170
+ true
171
+ end
172
+
169
173
  def reset_all_wizard_steps!
170
174
  update!(wizard_steps: {})
171
175
  end
@@ -1,3 +1,3 @@
1
1
  module EffectiveResources
2
- VERSION = '2.20.1'.freeze
2
+ VERSION = '2.20.3'.freeze
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: effective_resources
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.20.1
4
+ version: 2.20.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Code and Effect
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2024-04-17 00:00:00.000000000 Z
11
+ date: 2024-04-25 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rails