effective_orders 6.29.3 → 6.29.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/views/effective/orders/deferred/_form.html.haml +5 -2
- data/app/views/effective/orders/deluxe/_form.html.haml +4 -1
- data/app/views/effective/orders/deluxe_delayed/_form.html.haml +4 -1
- data/app/views/effective/orders/helcim/_form.html.haml +4 -1
- data/app/views/effective/orders/moneris/_form.html.haml +4 -1
- data/app/views/effective/orders/moneris_checkout/_form.html.haml +4 -1
- data/app/views/effective/orders/stripe/_form.html.haml +11 -8
- data/config/effective_orders.rb +5 -1
- data/lib/effective_orders/version.rb +1 -1
- data/lib/effective_orders.rb +16 -0
- 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: 035c812dd03e065b9385b58d2d10d3409bce2e7afac2a0e38ba00647f831cb04
|
|
4
|
+
data.tar.gz: f97db7d459d71ea2e11f64256a74f8f5d26adc8812a9b77c69b348c3210c08cd
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: fbbeb2c78da17cb03200d4eec40f1ece524652d60450c5e43b077ffb59c5da4c2494b1a83b5b19ec1deef7a77a46ef94c76e055481152f3a5ca43ac399cda8f5
|
|
7
|
+
data.tar.gz: 217a023107ae3fd4990f3222fafe528d0782a489f001b4703a4b0667864fad82c1abfa67d5682e3ae70314fcb8f99dd49919df4871296779465d9563393a43f3
|
|
@@ -12,5 +12,8 @@
|
|
|
12
12
|
- provider_locals = { order: order, deferred_url: deferred_url, declined_url: declined_url }
|
|
13
13
|
|
|
14
14
|
.d-flex.justify-content-around
|
|
15
|
-
- EffectiveOrders.deferred_providers.each do |provider|
|
|
16
|
-
|
|
15
|
+
- EffectiveOrders.deferred_providers.map(&:to_sym).each do |provider|
|
|
16
|
+
- if (restriction = EffectiveOrders.payment_restriction(provider, order))
|
|
17
|
+
.alert.alert-warning.mx-2 #{order_checkout_label(provider)} #{restriction}
|
|
18
|
+
- else
|
|
19
|
+
= render partial: "/effective/orders/#{provider}/form", locals: provider_locals
|
|
@@ -19,4 +19,7 @@
|
|
|
19
19
|
%br
|
|
20
20
|
Use credit card number 5555 5555 5555 4444 with any future expiry and any CVC.
|
|
21
21
|
|
|
22
|
-
=
|
|
22
|
+
- if (restriction = EffectiveOrders.payment_restriction(:deluxe, order))
|
|
23
|
+
.alert.alert-warning #{order_checkout_label(:deluxe)} #{restriction}
|
|
24
|
+
- else
|
|
25
|
+
= render('effective/orders/deluxe/element')
|
|
@@ -13,4 +13,7 @@
|
|
|
13
13
|
%br
|
|
14
14
|
Use credit card number 5555 5555 5555 4444 with any future expiry and any CVC.
|
|
15
15
|
|
|
16
|
-
=
|
|
16
|
+
- if (restriction = EffectiveOrders.payment_restriction(:deluxe_delayed, order))
|
|
17
|
+
.alert.alert-warning #{order_checkout_label(:deluxe_delayed)} #{restriction}
|
|
18
|
+
- else
|
|
19
|
+
= render('effective/orders/deluxe_delayed/element')
|
|
@@ -19,4 +19,7 @@
|
|
|
19
19
|
%br
|
|
20
20
|
Use credit card number 4242 4242 4242 4242 with any future Expiry date and CVV 123
|
|
21
21
|
|
|
22
|
-
=
|
|
22
|
+
- if (restriction = EffectiveOrders.payment_restriction(:helcim, order))
|
|
23
|
+
.alert.alert-warning #{order_checkout_label(:helcim)} #{restriction}
|
|
24
|
+
- else
|
|
25
|
+
= render('effective/orders/helcim/element')
|
|
@@ -44,4 +44,7 @@
|
|
|
44
44
|
= hidden_field_tag(:ship_postal_code, address.postal_code)
|
|
45
45
|
= hidden_field_tag(:ship_country, address.country)
|
|
46
46
|
|
|
47
|
-
=
|
|
47
|
+
- if (restriction = EffectiveOrders.payment_restriction(:moneris, order))
|
|
48
|
+
.alert.alert-warning #{order_checkout_label(:moneris)} #{restriction}
|
|
49
|
+
- else
|
|
50
|
+
= f.submit order_checkout_label(:moneris), border: false
|
|
@@ -11,7 +11,10 @@
|
|
|
11
11
|
-# This is set by the moneris_checkout.js javascript
|
|
12
12
|
= f.hidden_field :ticket
|
|
13
13
|
|
|
14
|
-
=
|
|
14
|
+
- if (restriction = EffectiveOrders.payment_restriction(:moneris_checkout, order))
|
|
15
|
+
.alert.alert-warning #{order_checkout_label(:moneris_checkout)} #{restriction}
|
|
16
|
+
- else
|
|
17
|
+
= render('effective/orders/moneris_checkout/element')
|
|
15
18
|
|
|
16
19
|
.mt-3.text-center
|
|
17
20
|
%em
|
|
@@ -18,14 +18,17 @@
|
|
|
18
18
|
-# This is set by the stripe.js javascript
|
|
19
19
|
= f.hidden_field :payment_intent_id, required: true
|
|
20
20
|
|
|
21
|
-
- if stripe
|
|
22
|
-
|
|
23
|
-
= render('effective/orders/stripe/element')
|
|
21
|
+
- if (restriction = EffectiveOrders.payment_restriction(:stripe, order))
|
|
22
|
+
.alert.alert-warning #{order_checkout_label(:stripe)} #{restriction}
|
|
24
23
|
- else
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
= collapse('Use this card instead...', class: 'update-stripe-payment-method') do
|
|
24
|
+
- if stripe[:token_required]
|
|
25
|
+
%p Please enter your credit card information.
|
|
28
26
|
= render('effective/orders/stripe/element')
|
|
27
|
+
- else
|
|
28
|
+
%p Your existing card <strong>#{stripe[:active_card]}</strong> will be charged.
|
|
29
|
+
|
|
30
|
+
= collapse('Use this card instead...', class: 'update-stripe-payment-method') do
|
|
31
|
+
= render('effective/orders/stripe/element')
|
|
29
32
|
|
|
30
|
-
|
|
31
|
-
|
|
33
|
+
.mt-4.stripe-submit-button{style: 'display: none;'}
|
|
34
|
+
= f.submit order_checkout_label(:stripe), center: true, border: false
|
data/config/effective_orders.rb
CHANGED
|
@@ -128,6 +128,8 @@ EffectiveOrders.setup do |config|
|
|
|
128
128
|
## Payment Provider specific options ##
|
|
129
129
|
#######################################
|
|
130
130
|
|
|
131
|
+
# You can add min_price and max_price to any payment provider configuration
|
|
132
|
+
|
|
131
133
|
# Cheque
|
|
132
134
|
# This is an deferred payment
|
|
133
135
|
config.cheque = false
|
|
@@ -175,7 +177,9 @@ EffectiveOrders.setup do |config|
|
|
|
175
177
|
# partner_token: '',
|
|
176
178
|
# currency: 'CAD',
|
|
177
179
|
# brand_color: '815AF0', # 6-digit hex color without any # sign
|
|
178
|
-
# fee_saver: false
|
|
180
|
+
# fee_saver: false,
|
|
181
|
+
# min_price: nil,
|
|
182
|
+
# max_price: nil
|
|
179
183
|
# }
|
|
180
184
|
|
|
181
185
|
# Moneris
|
data/lib/effective_orders.rb
CHANGED
|
@@ -259,6 +259,22 @@ module EffectiveOrders
|
|
|
259
259
|
true
|
|
260
260
|
end
|
|
261
261
|
|
|
262
|
+
def self.payment_restriction(payment_provider, order)
|
|
263
|
+
provider = try(payment_provider)
|
|
264
|
+
raise("Unexpected payment provider: #{payment_provider || 'nil'}") unless provider.kind_of?(Hash)
|
|
265
|
+
|
|
266
|
+
if (price = provider[:min_price]).present? && order.total < provider[:min_price]
|
|
267
|
+
return "is only available for invoices over $#{'%0.2f' % (price / 100.00)}"
|
|
268
|
+
end
|
|
269
|
+
|
|
270
|
+
if (price = provider[:max_price]).present? && order.total > provider[:max_price]
|
|
271
|
+
return "is only available for invoices up to $#{'%0.2f' % (price / 100.00)}"
|
|
272
|
+
end
|
|
273
|
+
|
|
274
|
+
# No restrictions
|
|
275
|
+
nil
|
|
276
|
+
end
|
|
277
|
+
|
|
262
278
|
def self.with_stripe(&block)
|
|
263
279
|
raise('expected stripe to be enabled') unless stripe?
|
|
264
280
|
|
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.29.
|
|
4
|
+
version: 6.29.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-11-
|
|
11
|
+
date: 2025-11-24 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: rails
|