effective_events 0.5.0 → 0.5.2

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: 4b29ba82476500dc0793755782751f968623a5fd7a2a05a4c01075fd57dd3eb2
4
- data.tar.gz: f3efe6fa8417a593fcf46a0219e2fdbe77183ab8d6b24344f969e969d4b45bf9
3
+ metadata.gz: 8f06812e69cf669261f11555462013b8340e0c04a6af24916857d2a94f2aee43
4
+ data.tar.gz: ead5d60f77ec92e1e00ca5cbb9c6e33b5553177bb953e89c6cd74c171acfca62
5
5
  SHA512:
6
- metadata.gz: c1788863bd9f10ab8af6e147b4b83df8bb0f12c353efd26c44fd2274f8c3b2108d0db460eb62a770efd6764bc72fd8829023a090208c468cffdda1517cee2897
7
- data.tar.gz: 424203654b7861c179002ef3d2989c8fa8334e57fa9886156638d405a292a1de586f836f3e40ac34eb6db5a8fa06dd01549232a9b3862fc48e7bf93ae24ac3c7
6
+ metadata.gz: ddd0f95d520222d396e10b9ae9158e0ae717b6d28884e62e87d13b821e926253abfe362ee5e939e39113b1eb93465462475f463087680bc64cecdb481497f164
7
+ data.tar.gz: 65949637a55a6d50e8266a2e9d9eea77ef1f5d350ea1950aaf4796af4592d99b694517824666092daa30d2f12f2c6cfeb211193268ac54b8a6050d71eefee651
@@ -4,6 +4,7 @@ class EffectiveEventsDatatable < Effective::Datatable
4
4
  # Upcoming should be first here, so when displayed as a simple datatable on the dashboard they only see upcoming events
5
5
  scope :upcoming
6
6
  scope :registerable
7
+ scope :external
7
8
  scope :all
8
9
  end
9
10
 
@@ -1,4 +1,11 @@
1
1
  module EffectiveEventsHelper
2
+ def effective_events_event_schedule(event)
3
+ if event.start_at.beginning_of_day == event.end_at.beginning_of_day
4
+ "#{event.start_at.strftime("%b %d, %Y %I:%M%P")} - #{event.end_at.strftime("%I:%M%P")}"
5
+ else
6
+ "#{event.start_at.strftime("%b %d, %Y")} - #{event.end_at.strftime("%b %d, %Y")}"
7
+ end
8
+ end
2
9
 
3
10
  def effective_events_event_tickets_collection(event, namespace = nil)
4
11
  raise('expected an Effective::Event') unless event.kind_of?(Effective::Event)
@@ -37,5 +44,4 @@ module EffectiveEventsHelper
37
44
  [label, product.to_param, disabled].compact
38
45
  end
39
46
  end
40
-
41
47
  end
@@ -79,6 +79,7 @@ module Effective
79
79
 
80
80
  # Doesnt consider sold out yet
81
81
  scope :registerable, -> { published.not_closed.with_tickets }
82
+ scope :external, -> { published.where(external_registration: true) }
82
83
 
83
84
  scope :paginate, -> (page: nil, per_page: nil) {
84
85
  page = (page || 1).to_i
@@ -113,8 +114,9 @@ module Effective
113
114
  validates :published_at, presence: true, unless: -> { draft? }
114
115
  validates :start_at, presence: true
115
116
  validates :end_at, presence: true
116
- validates :registration_start_at, presence: true
117
- validates :registration_end_at, presence: true
117
+
118
+ validates :registration_start_at, presence: true, unless: -> { external_registration? }
119
+ validates :registration_end_at, presence: true, unless: -> { external_registration? }
118
120
  validates :external_registration_url, presence: true, if: -> { external_registration? }
119
121
 
120
122
  validate(if: -> { start_at && end_at }) do
@@ -204,8 +206,8 @@ module Effective
204
206
  event.slug = event.slug + '-copy'
205
207
  event.draft = true
206
208
 
207
- event.body = body
208
- event.excerpt = excerpt
209
+ event.rich_text_body = rich_text_body
210
+ event.rich_text_excerpt = rich_text_excerpt
209
211
  end
210
212
  end
211
213
 
@@ -1,8 +1,6 @@
1
1
  .effective-event-categories
2
- %p
3
- %strong Categories
2
+ %ul.nav.nav-pills{role: 'navigation'}
3
+ = nav_link_to('All Events', effective_events.events_path, class: "nav-pill-effective-event effective-event-all")
4
4
 
5
- = link_to('All Events', effective_events.events_path)
6
-
7
- - EffectiveEvents.categories.each do |category|
8
- = link_to(category, effective_events.events_path + '/' + category.parameterize)
5
+ - EffectiveEvents.categories.each do |category|
6
+ = nav_link_to(category, effective_events.events_path + '/' + category.parameterize, class: "nav-pill-effective-event effective-event-#{category.parameterize}")
@@ -1,53 +1,7 @@
1
- .card
1
+ .card{class: "effective-events-#{event.category.parameterize}"}
2
2
  .card-body
3
- - if event.file.attached?
4
- = image_tag(event.file)
5
-
6
- = event.excerpt.to_s
7
-
8
- %table.table.effective-events-table
9
- %tbody
10
- %tr
11
- %th Dates
12
- %td
13
- Starts: #{event.start_at&.strftime('%F %R')}
14
- %br
15
- Ends: #{event.end_at&.strftime('%F %R')}
16
-
17
- - if event.category.present?
18
- %tr
19
- %th Category
20
- %td= event.category
21
-
22
- %tr
23
- %th Published At
24
- %td= event.published_at.strftime('%F %R')
25
-
26
- %tr
27
- %th Registration Closes
28
- %td= event.registration_end_at.strftime('%F %R')
29
-
30
- %tr
31
- %th Early Bird
32
- %td
33
- Status: #{event.early_bird_status}
34
- %br
35
- Ends: #{event.early_bird_end_at&.strftime('%F %R')}
36
-
37
- - if event.event_tickets.present?
38
- %tr
39
- %th Tickets
40
- %td
41
- %ul.pl-3
42
- - event.event_tickets.each do |ticket|
43
- %li= "#{ticket} (#{price_to_currency(ticket.price)})"
44
-
45
- - if event.event_products.present?
46
- %tr
47
- %th Add-ons
48
- %td
49
- %ul.pl-0
50
- - event.event_products.each do |product|
51
- %li= "#{product} (#{price_to_currency(product.price)})"
52
-
53
- = link_to('View more', effective_events.event_path(event))
3
+ = link_to(event.category, effective_events.events_path + '/' + event.category.parameterize, class: "badge badge-event mb-2 effective-events-#{event.category.parameterize}")
4
+ %h2.mt-1= link_to event.title, effective_events.event_path(event)
5
+ .effective-events-schedule= effective_events_event_schedule(event)
6
+ .effective-events-excerpt= event.excerpt.to_s
7
+ = link_to "View Event", effective_events.event_path(event), class: 'btn btn-primary'
@@ -1,52 +1,60 @@
1
- .effective-event
2
- - if @event.sold_out?
3
- .alert.alert-warning This event is sold out.
4
-
5
- - if @event.closed?
6
- .alert.alert-warning This event is no longer available.
7
-
8
- - if @event.registerable?
9
- .resource-buttons
10
- - url = @event.external_registration_url.presence || effective_events.new_event_event_registration_path(@event)
11
- = link_to 'Register', url, class: 'btn btn-primary'
12
-
13
- = card do
14
- - if @event.file.attached?
15
- = image_tag(@event.file)
16
-
1
+ = render 'layout' do
2
+ .effective-event
3
+ - if @event.sold_out?
4
+ .alert.alert-warning.mb-3 This event is sold out.
5
+
6
+ - if @event.closed?
7
+ .alert.alert-warning.mb-3 This event is no longer available.
8
+
9
+ - if @event.registerable?
10
+ .resource-buttons
11
+ - url = @event.external_registration_url.presence || effective_events.new_event_event_registration_path(@event)
12
+ = link_to 'Register', url, class: 'btn btn-primary'
13
+
14
+ - if @event.file.attached?
15
+ = image_tag(@event.file)
16
+
17
+ - if @event.file.attached?
18
+ = image_tag(@event.file)
19
+
20
+ %ul.list-unstyled
21
+ -# Not shown
22
+ %li
23
+ %strong Published:
24
+ = @event.published_at.strftime("%b %d, %Y %I:%M%P")
25
+
26
+ %li
27
+ %strong Event Date:
28
+ = effective_events_event_schedule(@event)
29
+
30
+ - if @event.registration_start_at.present?
31
+ %li
32
+ %strong Registration Opens:
33
+ = @event.registration_start_at.strftime("%b %d, %Y %I:%M%P")
34
+
35
+ - if @event.early_bird_end_at.present?
36
+ %li
37
+ %strong Early Bird Rate Ends:
38
+ = @event.early_bird_end_at.strftime("%b %d, %Y %I:%M%P")
39
+
40
+ - if @event.registration_end_at.present?
41
+ %li
42
+ %strong Registration Closes:
43
+ = @event.registration_end_at.strftime('%F %R')
44
+
45
+ - if @event.event_tickets.present?
46
+ %li
47
+ %strong Tickets
48
+ %ul
49
+ - @event.event_tickets.each do |ticket|
50
+ %li= "#{ticket} (#{price_to_currency(ticket.price)})"
51
+
52
+ - if @event.event_products.present?
53
+ %li
54
+ %strong Add-ons
55
+ %ul
56
+ - @event.event_products.each do |product|
57
+ %li= "#{product} (#{price_to_currency(product.price)})"
58
+
59
+ - if @event.body.present?
17
60
  = @event.body.to_s
18
-
19
- %table.table.effective-events-table
20
- %tbody
21
- %tr
22
- %th Dates
23
- %td
24
- Starts: #{@event.start_at&.strftime('%F %R')}
25
- %br
26
- Ends: #{@event.end_at&.strftime('%F %R')}
27
-
28
- %tr
29
- %th Registration Closes
30
- %td= @event.registration_end_at.strftime('%F %R')
31
-
32
- %tr
33
- %th Early Bird
34
- %td
35
- Status: #{@event.early_bird_status}
36
- %br
37
- Ends: #{@event.early_bird_end_at&.strftime('%F %R')}
38
-
39
- %tr
40
- %th Tickets
41
- %td
42
- %ul.pl-3
43
- - @event.event_tickets.each do |ticket|
44
- %li= "#{ticket} (#{price_to_currency(ticket.price)})"
45
-
46
- - if @event.event_products.present?
47
- %tr
48
- %th Add-ons
49
- %td
50
- %ul.pl-0
51
- - @event.event_products.each do |product|
52
- %li= "#{product} (#{price_to_currency(product.price)})"
@@ -1,3 +1,3 @@
1
1
  module EffectiveEvents
2
- VERSION = '0.5.0'.freeze
2
+ VERSION = '0.5.2'.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: 0.5.0
4
+ version: 0.5.2
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-10-26 00:00:00.000000000 Z
11
+ date: 2022-11-09 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rails