effective_resources 1.16.0 → 1.17.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 5e7d7a9ee482e38794221a01b428e01de652eb23b63c2b926eda018c47ae057c
4
- data.tar.gz: 5a920c11ce61cf201a20b1a7b2fb946846d1f034ad4e9acb91253b6d0a8f6ce5
3
+ metadata.gz: 89ee5768e0e064df020dfd0da3110e601fa51dd100d10a909442279c5e85465e
4
+ data.tar.gz: 03d67a2c0228472542671b781ba00a16fd3959e541adc4d1e9beeaf3e23d2b58
5
5
  SHA512:
6
- metadata.gz: 99d01c855370aa34ad51bc3bde24a11d6b57080616312b4ed8e9c066601ec7fb5275117327780a94f9d85ad81e9a9486c49be29dfcb429f4654b3cac64ce67cc
7
- data.tar.gz: 3fcd18e60abdb8f8da2208a92c6547718611ad70f0018c7a43af831173da3ee44cdc1c5a3a6f033c54d6fe97d67c749b8ccfb01f8b52e46893b132b6a6a5aada
6
+ metadata.gz: 143e22c3e4df4f5937fefd00963d97e483e4d6355ad13367a3a1e64a74c0a32541cd5d2fe3100e728fa839e15ff32dc6f5c4b716ce69dd718b8d53b43a15b899
7
+ data.tar.gz: 2dba5416763bec7476ffd586dbade4dd44fc21eb3112580c09b470eb5bf719a18116294e8f5c2afcb85e80d48a459d80a91734e27f68e342af6a9b7238c7b4da
@@ -48,9 +48,12 @@ module ActsAsPurchasableWizard
48
48
  end
49
49
 
50
50
  def find_or_build_submit_order
51
- order = submit_order || orders.build(user: owner)
51
+ order = submit_order || orders.build(user: owner) # This is polymorphic user, might be an organization
52
52
  fees = submit_fees().reject { |fee| fee.marked_for_destruction? }
53
53
 
54
+ # A membership could go from individual to organization
55
+ order.user = owner
56
+
54
57
  # Adds fees, but does not overwrite any existing price.
55
58
  fees.each do |fee|
56
59
  order.add(fee) unless order.purchasables.include?(fee)
@@ -56,7 +56,23 @@ module ActsAsWizard
56
56
 
57
57
  def required_steps
58
58
  return self.class.test_required_steps if Rails.env.test? && self.class.test_required_steps.present?
59
- wizard_step_keys()
59
+
60
+ steps = wizard_step_keys()
61
+
62
+ # Give the caller class a mechanism to change these.
63
+ # Used more in effective memberships
64
+ steps = change_wizard_steps(steps)
65
+
66
+ unless steps.kind_of?(Array) && steps.all? { |step| step.kind_of?(Symbol) }
67
+ raise('expected change_wizard_steps to return an Array of steps with no nils')
68
+ end
69
+
70
+ steps
71
+ end
72
+
73
+ # Intended for use by calling class
74
+ def change_wizard_steps(steps)
75
+ steps
60
76
  end
61
77
 
62
78
  # For use in the summary partials. Does not include summary.
@@ -1,3 +1,3 @@
1
1
  module EffectiveResources
2
- VERSION = '1.16.0'.freeze
2
+ VERSION = '1.17.0'.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: 1.16.0
4
+ version: 1.17.0
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: 2022-03-12 00:00:00.000000000 Z
11
+ date: 2022-03-17 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rails