effective_events 2.27.0 → 2.28.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: 8ca685f788c0c911540a269b943046c6182232e524f377fedc73d4df69040f32
4
- data.tar.gz: d959c84ffa9a9a5f6c99107ba30f000795c4aaae1e5fbbe50c80a03642146dd9
3
+ metadata.gz: 2a2da9770f5c4f1594f4364d6ac060476cdd4e4624c8c1e8866c4ce096001ba6
4
+ data.tar.gz: 94af1b7beb1e82aa64fce228e047dfbca828bf5fddc1e88ffb7d59b1e94a0833
5
5
  SHA512:
6
- metadata.gz: '08cff54abfee17f8058f581832a3bb313011cb6297259dbc856e550c27e6bca2dfd62dea52eaf680e9f80be6fa95f4f236d632793bc465ffd29585dedc597eb8'
7
- data.tar.gz: 92d401b99b9bc124fe35754837a3c561f9000018f3081501b18ec6b1e81a234c8d9be0d7a1e077b937d9ffc89bbd96d54e9ffd72f9d43ad0f06b669786368a87
6
+ metadata.gz: ac0da1b17544723dbf542c7286fa456991b0882baf0c5bb0aefe5ef3d4f3cd18aecef8741a984761ffc33f54c50930d3a90dfbe398aefcca97baf3332abdf12d
7
+ data.tar.gz: 6a194263574e2a7b715573f39a94fc06c9e653100b80f98f1e123a7a034ebf21fb9549f140a266501e28aaf3a1634515a3ad79afff752eb2a6a8dd1902d4f85b
@@ -24,10 +24,11 @@ module Effective
24
24
 
25
25
  @event_registration = resource
26
26
  @event = resource.event
27
- @event_registrants = resource.event_registrants
28
- @event_addons = resource.event_addons
29
27
 
30
- subject = subject_for(__method__, "Event Confirmation - #{@event}", resource, opts)
28
+ @order = @event_registration.submit_order
29
+ raise('expected an event registration submit_order') unless @order.present?
30
+
31
+ subject = subject_for(__method__, "Confirmation - #{@event}", resource, opts)
31
32
  headers = headers_for(resource, opts)
32
33
 
33
34
  mail(to: resource.owner.email, subject: subject, **headers)
@@ -41,7 +42,7 @@ module Effective
41
42
  @event = resource.event
42
43
  @event_registration = resource.event_registration # Optional
43
44
 
44
- subject = subject_for(__method__, "Event Registrant Confirmation - #{@event}", resource, opts)
45
+ subject = subject_for(__method__, "Confirmation - #{@event}", resource, opts)
45
46
  headers = headers_for(resource, opts)
46
47
 
47
48
  mail(to: resource.email, subject: subject, **headers)
@@ -229,7 +229,7 @@ module EffectiveEventsEventRegistration
229
229
  notifications = event.event_notifications.select(&:registrant_purchased?)
230
230
  notifications.each { |notification| notification.notify!(event_registrants: event_registrants) }
231
231
 
232
- send_event_registration_confirmation! unless submit_order&.delayed?
232
+ send_event_registration_confirmation! unless submit_order&.delayed? || submit_order&.deferred?
233
233
  end
234
234
  end
235
235
 
@@ -19,35 +19,83 @@
19
19
 
20
20
  %hr
21
21
 
22
- - responses = Array(@event_registrants).any? { |er| er.responses.present? }
23
-
24
- %table.table
25
- %thead
26
- %tr
27
- %th{style: "text-align: left;"} Qty
28
- %th{style: "text-align: left;"} Ticket
29
- %th{style: "text-align: right;"} Price
30
- %tbody
31
- - Array(@event_registrants).each do |er|
22
+ .effective-order
23
+ %table.table{style: "margin-bottom: 20px;"}
24
+ %thead
32
25
  %tr
33
- %td{style: "text-align: left;"} 1
34
- %td{style: "text-align: left;"}
35
- = er.purchasable_name
36
- = er.responses if responses
37
- %td{style: "text-align: right;"}= price_to_currency(er.price)
26
+ %th{style: "text-align: left;"} Qty
27
+ %th{style: "text-align: left;"} Ticket
28
+ %th{style: "text-align: right;"} Price
38
29
 
39
- - Array(@event_addons).each do |ea|
30
+ %tbody
31
+ - @order.order_items.each do |oi|
32
+ %tr
33
+ %td{style: "text-align: left;"}= oi.quantity
34
+ %td{style: "text-align: left;"}
35
+ = oi.to_s.html_safe
36
+ = oi.purchasable.try(:responses) || oi.purchasable.try(:notes)
37
+ %td.price= price_to_currency(oi.price)
38
+
39
+ %tfoot
40
+ %tr
41
+ %td{colspan: 3}= " ".html_safe
40
42
  %tr
41
- %td{style: "text-align: left;"} 1
42
- %td{style: "text-align: left;"}
43
- = ea.purchasable_name
44
- = ea.notes if responses
45
- %td{style: "text-align: right;"}= price_to_currency(ea.price)
43
+ %th.subtotal{colspan: 2}
44
+ Subtotal
45
+ %td.price.subtotal-price
46
+ = price_to_currency(@order.subtotal)
47
+
48
+ - if @order.tax_rate.blank?
49
+ -# Nothing to do. We can't display Tax, Total or Credit Card Surcharge (which is taxed) yet.
50
+
51
+ - elsif @order.tax_rate.present? && @order.surcharge_percent.to_f > 0.0
52
+ %tr
53
+ %th.tax{colspan: 2}
54
+ Tax (#{rate_to_percentage(@order.tax_rate)})
55
+ %td.price.tax-price
56
+ = price_to_currency(@order.tax)
57
+
58
+ %tr
59
+ %th.amount-owing{colspan: 2}
60
+ Amount owing before Credit Card Processing Fee
61
+ %td.price.amount-owing-price
62
+ = price_to_currency(@order.amount_owing)
63
+
64
+ %tr
65
+ %th.surcharge{colspan: 2}
66
+ Credit Card Processing Fee (#{rate_to_percentage(@order.surcharge_percent)}) on #{price_to_currency(@order.amount_owing)}
67
+ %td.price.surcharge-price
68
+ = price_to_currency(@order.surcharge)
69
+
70
+ %tr
71
+ %th.surcharge-tax{colspan: 2}
72
+ Tax (#{rate_to_percentage(@order.tax_rate)}) on Credit Card Processing Fee
73
+ %td.price.surcharge-tax-price
74
+ = price_to_currency(@order.surcharge_tax)
75
+
76
+ %tr
77
+ %th.total{colspan: 2}
78
+ Total amount charged to credit card
79
+ %td.price.total-price
80
+ = price_to_currency(@order.total)
81
+
82
+ - elsif @order.tax_rate.present? && !(@order.surcharge_percent.to_f > 0.0)
83
+ %tr
84
+ %th.tax{colspan: 2}
85
+ Tax (#{rate_to_percentage(@order.tax_rate)})
86
+ %td.price.tax-price
87
+ = price_to_currency(@order.tax)
88
+
89
+ %tr
90
+ %th.total{colspan: 2}
91
+ Total
92
+ %td.total-price
93
+ = price_to_currency(@order.total)
46
94
 
47
95
  %hr
48
96
 
49
97
  %p{style: "text-align: center;"}
50
- - if @event.delayed_payment?
98
+ - if @event.delayed_payment? && @order.delayed? && @order.deferred?
51
99
  = link_to('View or modify your registration', effective_events.event_event_registration_url(@event, @event_registration))
52
100
  - else
53
101
  = link_to('View your registration', effective_events.event_event_registration_url(@event, @event_registration))
@@ -1,3 +1,3 @@
1
1
  module EffectiveEvents
2
- VERSION = '2.27.0'.freeze
2
+ VERSION = '2.28.0'.freeze
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: effective_events
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.27.0
4
+ version: 2.28.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: 2024-12-17 00:00:00.000000000 Z
11
+ date: 2024-12-18 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rails