effective_resources 2.20.2 → 2.20.4
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:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: efe50d36259877c5389c59e3dd2bb3db2a77915d60a37325a32b9fcbaa42172d
|
4
|
+
data.tar.gz: 155c033973d9c7cec74a3036b6c06d981756b322093ce117c15622828b5723c2
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 95e04d2418a1b790771a7f8c652c756d70be5c9b216ebf292dcb9ca55dfcedd1022a4a358f804d56d633dbd5ccb7da56111d15830f87ffa22b274d3741842c06
|
7
|
+
data.tar.gz: bb8aba4fdfe1c609a875ab65c5f62e38c727969813427e1517aa176717bad884abfc8a278ecae23679cf25a4c0cf2f9afcd6dda4b1bc6dd05819eac208088dd3
|
@@ -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 ||
|
52
|
-
order =
|
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?
|
@@ -145,6 +145,13 @@ module ActsAsWizard
|
|
145
145
|
:start
|
146
146
|
end
|
147
147
|
|
148
|
+
def all_steps_before(step)
|
149
|
+
index = all_steps.index(step)
|
150
|
+
raise("unexpected step #{step}") unless index.present?
|
151
|
+
|
152
|
+
all_steps.first(index)
|
153
|
+
end
|
154
|
+
|
148
155
|
def previous_step(step)
|
149
156
|
index = required_steps.index(step)
|
150
157
|
required_steps[index-1] unless index == 0 || index.nil?
|
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.
|
4
|
+
version: 2.20.4
|
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-
|
11
|
+
date: 2024-04-26 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rails
|