effective_orders 6.18.2 → 6.18.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 +4 -4
- data/app/models/effective/order.rb +21 -4
- data/app/views/effective/orders/_checkout_step2.html.haml +6 -2
- data/app/views/effective/orders/_order_deferred.html.haml +1 -1
- data/app/views/effective/orders/delayed/_form.html.haml +1 -1
- data/lib/effective_orders/version.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 6d30ecbd0854168592005b06f14661ded4e48e61a8b4b4a181e652c0c3826cbc
|
|
4
|
+
data.tar.gz: 42506cd1c6268406fa3e7cb8802799905d5e10fc0ace73fd4982c7f8500cb9de
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: bc88b76583abd395fda539b6a237218f3e625fc88f83c878b0d0d71e114a2002c701aaf574bee9cc179a15fd6d24a9291a642bf66c407c8e729a5783a4fc0595
|
|
7
|
+
data.tar.gz: 215adf0b221c134a2925c52ed4312ed1daec375cd0977db3a82464fe35e7bc9dff5c16e613c635faf7191a42398c856a3d9b72eb3cba5ea2085525377109a5d6
|
|
@@ -154,12 +154,14 @@ module Effective
|
|
|
154
154
|
scope :pending_refunds, -> { not_purchased.where('total < ?', 0) }
|
|
155
155
|
|
|
156
156
|
scope :delayed, -> { where(delayed_payment: true).where.not(delayed_payment_date: nil) }
|
|
157
|
+
scope :delayed_payment_provider, -> { where(payment_provider: EffectiveOrders.delayed_providers) }
|
|
157
158
|
scope :delayed_payment_date_past, -> { delayed.where(arel_table[:delayed_payment_date].lteq(Time.zone.today)) }
|
|
158
159
|
scope :delayed_payment_date_upcoming, -> { delayed.where(arel_table[:delayed_payment_date].gt(Time.zone.today)) }
|
|
159
160
|
|
|
160
161
|
# Used by the rake effective_orders:purchase_delayed_orders task
|
|
161
162
|
scope :delayed_ready_to_purchase, -> {
|
|
162
|
-
delayed.deferred.delayed_payment_date_past
|
|
163
|
+
delayed.deferred.delayed_payment_provider.delayed_payment_date_past
|
|
164
|
+
.where(delayed_payment_purchase_ran_at: nil).where.not(delayed_payment_intent: nil)
|
|
163
165
|
}
|
|
164
166
|
|
|
165
167
|
# effective_reports
|
|
@@ -196,7 +198,8 @@ module Effective
|
|
|
196
198
|
validates :delayed_payment_date, presence: true, if: -> { delayed_payment? }
|
|
197
199
|
validates :delayed_payment_date, absence: true, unless: -> { delayed_payment? }
|
|
198
200
|
|
|
199
|
-
|
|
201
|
+
# deluxe_delayed
|
|
202
|
+
with_options(if: -> { delayed? && deferred? && delayed_payment_provider? }) do
|
|
200
203
|
validates :delayed_payment_intent, presence: { message: 'please provide your card information' }
|
|
201
204
|
validates :delayed_payment_total, presence: true
|
|
202
205
|
end
|
|
@@ -248,7 +251,7 @@ module Effective
|
|
|
248
251
|
validates :payment_provider, presence: true
|
|
249
252
|
|
|
250
253
|
validate do
|
|
251
|
-
unless
|
|
254
|
+
unless deferred_payment_provider? || delayed_payment_provider?
|
|
252
255
|
errors.add(:payment_provider, "unknown deferred payment provider")
|
|
253
256
|
end
|
|
254
257
|
end
|
|
@@ -546,6 +549,14 @@ module Effective
|
|
|
546
549
|
def refund?
|
|
547
550
|
total.to_i < 0
|
|
548
551
|
end
|
|
552
|
+
|
|
553
|
+
def delayed_payment_provider?
|
|
554
|
+
payment_provider.present? && EffectiveOrders.delayed_providers.include?(payment_provider)
|
|
555
|
+
end
|
|
556
|
+
|
|
557
|
+
def deferred_payment_provider?
|
|
558
|
+
payment_provider.present? && EffectiveOrders.deferred_providers.include?(payment_provider)
|
|
559
|
+
end
|
|
549
560
|
|
|
550
561
|
# A new order is created.
|
|
551
562
|
# If the delayed_payment and delayed_payment date are set, it's a delayed order
|
|
@@ -558,6 +569,7 @@ module Effective
|
|
|
558
569
|
def delayed_ready_to_purchase?
|
|
559
570
|
return false unless delayed?
|
|
560
571
|
return false unless deferred?
|
|
572
|
+
return false unless delayed_payment_provider?
|
|
561
573
|
return false unless delayed_payment_intent.present?
|
|
562
574
|
return false if delayed_payment_date_upcoming?
|
|
563
575
|
return false if delayed_payment_purchase_ran_at.present? # We ran before and probably failed
|
|
@@ -566,7 +578,7 @@ module Effective
|
|
|
566
578
|
end
|
|
567
579
|
|
|
568
580
|
def delayed_payment_info
|
|
569
|
-
return unless delayed? && deferred?
|
|
581
|
+
return unless delayed? && deferred? && delayed_payment_provider?
|
|
570
582
|
return unless delayed_payment_date_upcoming?
|
|
571
583
|
|
|
572
584
|
"Your #{delayed_payment_method} will be charged $#{'%0.2f' % total_to_f} on #{delayed_payment_date.strftime('%F')}"
|
|
@@ -796,6 +808,11 @@ module Effective
|
|
|
796
808
|
deferred_by: (deferred_by.presence || current_user)
|
|
797
809
|
)
|
|
798
810
|
|
|
811
|
+
# Went from delayed to cheque
|
|
812
|
+
if delayed_payment? && !delayed_payment_provider?
|
|
813
|
+
assign_attributes(delayed_payment: false, delayed_payment_date: nil, delayed_payment_intent: nil, delayed_payment_total: nil)
|
|
814
|
+
end
|
|
815
|
+
|
|
799
816
|
if current_user&.email.present?
|
|
800
817
|
assign_attributes(email: current_user.email)
|
|
801
818
|
end
|
|
@@ -12,6 +12,10 @@
|
|
|
12
12
|
- if EffectiveOrders.delayed? && order.delayed_payment_date_upcoming?
|
|
13
13
|
= render partial: '/effective/orders/delayed/form', locals: provider_locals
|
|
14
14
|
|
|
15
|
+
- if EffectiveOrders.deferred? && !controller_path.include?('admin/') && !local_assigns[:skip_deferred]
|
|
16
|
+
%p.my-4.text-center - or -
|
|
17
|
+
= render partial: '/effective/orders/deferred/form', locals: provider_locals
|
|
18
|
+
|
|
15
19
|
- elsif EffectiveOrders.free? && order.free?
|
|
16
20
|
= render partial: '/effective/orders/free/form', locals: provider_locals
|
|
17
21
|
|
|
@@ -41,8 +45,8 @@
|
|
|
41
45
|
%p.my-4.text-center - or -
|
|
42
46
|
= render partial: '/effective/orders/deferred/form', locals: provider_locals
|
|
43
47
|
|
|
44
|
-
- if EffectiveResources.authorized?(controller, :admin, :effective_orders) && controller_path.include?('admin/')
|
|
45
|
-
- if EffectiveOrders.delayed? && order.delayed? && order.deferred?
|
|
48
|
+
- if EffectiveResources.authorized?(controller, :admin, :effective_orders) && controller_path.include?('admin/')
|
|
49
|
+
- if EffectiveOrders.delayed? && order.delayed? && order.deferred? && order.delayed_payment_provider?
|
|
46
50
|
.effective-order-admin-purchase-actions
|
|
47
51
|
= render partial: '/effective/orders/delayed/form_purchase', locals: provider_locals
|
|
48
52
|
|
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
%tbody
|
|
8
8
|
%tr
|
|
9
9
|
%td
|
|
10
|
-
- if order.delayed?
|
|
10
|
+
- if order.delayed? && order.delayed_payment_provider?
|
|
11
11
|
%p Your #{order.delayed_payment_method} will be charged on #{order.delayed_payment_date.strftime('%F')}
|
|
12
12
|
- else
|
|
13
13
|
%p Waiting for payment by #{order.payment_provider}.
|
|
@@ -17,7 +17,7 @@
|
|
|
17
17
|
|
|
18
18
|
- provider_locals = { order: order, deferred_url: deferred_url, declined_url: declined_url }
|
|
19
19
|
|
|
20
|
-
- if order.deferred? && order.delayed?
|
|
20
|
+
- if order.deferred? && order.delayed? && order.delayed_payment_provider?
|
|
21
21
|
%p Your existing #{order.delayed_payment_method} will be charged on the payment date.
|
|
22
22
|
|
|
23
23
|
= collapse('Change my card info') do
|
metadata
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: effective_orders
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 6.18.
|
|
4
|
+
version: 6.18.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: 2025-01-
|
|
11
|
+
date: 2025-01-15 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: rails
|