Linter fixes (many unrelated)
This commit is contained in:
parent
d40229a054
commit
d040d9c6ab
20 changed files with 100 additions and 79 deletions
|
|
@ -714,3 +714,6 @@ Style/TrailingCommaInLiteral:
|
||||||
- 'Guardfile'
|
- 'Guardfile'
|
||||||
- 'db/migrate/20140701123203_add_events_per_week_to_conference.rb'
|
- 'db/migrate/20140701123203_add_events_per_week_to_conference.rb'
|
||||||
- 'spec/models/conference_spec.rb'
|
- 'spec/models/conference_spec.rb'
|
||||||
|
|
||||||
|
Style/FrozenStringLiteralComment:
|
||||||
|
Enabled: false
|
||||||
|
|
|
||||||
|
|
@ -154,7 +154,7 @@ module ApplicationHelper
|
||||||
end
|
end
|
||||||
|
|
||||||
def rescheduling_hint(affected_event_count)
|
def rescheduling_hint(affected_event_count)
|
||||||
if affected_event_count > 0
|
if affected_event_count.positive?
|
||||||
"You have #{affected_event_count} scheduled #{'event'.pluralize(affected_event_count)}. Changing the conference hours will unschedule those scheduled outside the conference hours."
|
"You have #{affected_event_count} scheduled #{'event'.pluralize(affected_event_count)}. Changing the conference hours will unschedule those scheduled outside the conference hours."
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
@ -196,4 +196,23 @@ module ApplicationHelper
|
||||||
object.picture.large.url
|
object.picture.large.url
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
def rating_stars(rating, max, options = {})
|
||||||
|
Array.new(max) do |counter|
|
||||||
|
content_tag(
|
||||||
|
'label',
|
||||||
|
'',
|
||||||
|
class: "rating#{' bright' if rating.to_f > counter}",
|
||||||
|
**options
|
||||||
|
)
|
||||||
|
end.join.html_safe
|
||||||
|
end
|
||||||
|
|
||||||
|
def rating_fraction(rating, max, options = {})
|
||||||
|
content_tag(
|
||||||
|
'span',
|
||||||
|
"#{rating}/#{max}",
|
||||||
|
**options
|
||||||
|
)
|
||||||
|
end`
|
||||||
end
|
end
|
||||||
|
|
|
||||||
|
|
@ -10,17 +10,6 @@ module EventsHelper
|
||||||
"Registered: #{event.registrations.count}"
|
"Registered: #{event.registrations.count}"
|
||||||
end
|
end
|
||||||
|
|
||||||
def rating_stars(rating, max, options = {})
|
|
||||||
max.times.collect do |counter|
|
|
||||||
content_tag(
|
|
||||||
'label',
|
|
||||||
'',
|
|
||||||
class: "rating#{' bright' if rating.to_f > counter}",
|
|
||||||
**options
|
|
||||||
)
|
|
||||||
end.join.html_safe
|
|
||||||
end
|
|
||||||
|
|
||||||
def replacement_event_notice(event_schedule)
|
def replacement_event_notice(event_schedule)
|
||||||
if event_schedule.present? && event_schedule.replacement?
|
if event_schedule.present? && event_schedule.replacement?
|
||||||
replaced_event = (event_schedule.intersecting_event_schedules.withdrawn.first || event_schedule.intersecting_event_schedules.canceled.first).event
|
replaced_event = (event_schedule.intersecting_event_schedules.withdrawn.first || event_schedule.intersecting_event_schedules.canceled.first).event
|
||||||
|
|
@ -158,10 +147,10 @@ module EventsHelper
|
||||||
event.id,
|
event.id,
|
||||||
event.send(attribute),
|
event.send(attribute),
|
||||||
url: admin_conference_program_event_path(
|
url: admin_conference_program_event_path(
|
||||||
conference_id,
|
conference_id,
|
||||||
event,
|
event,
|
||||||
event: { attribute => nil }
|
event: { attribute => nil }
|
||||||
),
|
),
|
||||||
method: :patch,
|
method: :patch,
|
||||||
class: 'switch-checkbox',
|
class: 'switch-checkbox',
|
||||||
data: {
|
data: {
|
||||||
|
|
@ -193,13 +182,13 @@ module EventsHelper
|
||||||
}
|
}
|
||||||
) do
|
) do
|
||||||
content_tag('span', selection) +
|
content_tag('span', selection) +
|
||||||
content_tag('span', '', class: 'caret')
|
content_tag('span', '', class: 'caret')
|
||||||
end +
|
end +
|
||||||
content_tag('ul', class: 'dropdown-menu') do
|
content_tag('ul', class: 'dropdown-menu') do
|
||||||
options.collect do |option|
|
options.collect do |option|
|
||||||
content_tag('li', link_to(option[0], option[1], method: :patch))
|
content_tag('li', link_to(option[0], option[1], method: :patch))
|
||||||
end.join.html_safe
|
end.join.html_safe
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
|
||||||
|
|
@ -18,7 +18,7 @@ class Ability
|
||||||
can [:index, :conferences], Organization
|
can [:index, :conferences], Organization
|
||||||
can [:index], Conference
|
can [:index], Conference
|
||||||
can [:show], Conference do |conference|
|
can [:show], Conference do |conference|
|
||||||
conference.splashpage && conference.splashpage.public == true
|
conference&.splashpage&.public
|
||||||
end
|
end
|
||||||
# Can view the schedule
|
# Can view the schedule
|
||||||
can [:schedule, :events], Conference do |conference|
|
can [:schedule, :events], Conference do |conference|
|
||||||
|
|
|
||||||
|
|
@ -42,7 +42,7 @@ class Cfp < ApplicationRecord
|
||||||
def weeks
|
def weeks
|
||||||
result = end_week - start_week + 1
|
result = end_week - start_week + 1
|
||||||
weeks = Date.new(start_date.year, 12, 31).strftime('%W').to_i
|
weeks = Date.new(start_date.year, 12, 31).strftime('%W').to_i
|
||||||
result < 0 ? result + weeks : result
|
result.negative? ? result + weeks : result
|
||||||
end
|
end
|
||||||
|
|
||||||
##
|
##
|
||||||
|
|
@ -63,7 +63,7 @@ class Cfp < ApplicationRecord
|
||||||
|
|
||||||
def remaining_days(date = Date.today)
|
def remaining_days(date = Date.today)
|
||||||
result = (end_date - date).to_i
|
result = (end_date - date).to_i
|
||||||
result > 0 ? result : 0
|
result.positive? ? result : 0
|
||||||
end
|
end
|
||||||
|
|
||||||
##
|
##
|
||||||
|
|
@ -106,12 +106,12 @@ class Cfp < ApplicationRecord
|
||||||
private
|
private
|
||||||
|
|
||||||
def before_end_of_conference
|
def before_end_of_conference
|
||||||
if program && program.conference && program.conference.end_date && end_date && (end_date > program.conference.end_date)
|
if program&.conference && program.conference.end_date && end_date && (end_date > program.conference.end_date)
|
||||||
errors
|
errors
|
||||||
.add(:end_date, "can't be after the conference end date (#{program.conference.end_date})")
|
.add(:end_date, "can't be after the conference end date (#{program.conference.end_date})")
|
||||||
end
|
end
|
||||||
|
|
||||||
if program && program.conference && program.conference.end_date && start_date && (start_date > program.conference.end_date)
|
if program&.conference && program.conference.end_date && start_date && (start_date > program.conference.end_date)
|
||||||
errors
|
errors
|
||||||
.add(:start_date, "can't be after the conference end date (#{program.conference.end_date})")
|
.add(:start_date, "can't be after the conference end date (#{program.conference.end_date})")
|
||||||
end
|
end
|
||||||
|
|
|
||||||
|
|
@ -102,7 +102,7 @@ class Conference < ApplicationRecord
|
||||||
# * +false+ -> If the user is registered
|
# * +false+ -> If the user is registered
|
||||||
# * +true+ - If the user isn't registered
|
# * +true+ - If the user isn't registered
|
||||||
def user_registered? user
|
def user_registered? user
|
||||||
user.present? && registrations.where(user_id: user.id).count > 0
|
user.present? && registrations.where(user_id: user.id).count.positive?
|
||||||
end
|
end
|
||||||
|
|
||||||
##
|
##
|
||||||
|
|
@ -113,7 +113,7 @@ class Conference < ApplicationRecord
|
||||||
event_schedules = program.event_schedules.select do |event_schedule|
|
event_schedules = program.event_schedules.select do |event_schedule|
|
||||||
event_schedule.start_time.hour < start_hour ||
|
event_schedule.start_time.hour < start_hour ||
|
||||||
event_schedule.end_time.hour > end_hour ||
|
event_schedule.end_time.hour > end_hour ||
|
||||||
(event_schedule.end_time.hour == end_hour && event_schedule.end_time.minute > 0)
|
(event_schedule.end_time.hour == end_hour && event_schedule.end_time.minute.positive?)
|
||||||
end
|
end
|
||||||
event_schedules.each(&:destroy)
|
event_schedules.each(&:destroy)
|
||||||
end
|
end
|
||||||
|
|
@ -151,7 +151,7 @@ class Conference < ApplicationRecord
|
||||||
def get_submissions_per_week
|
def get_submissions_per_week
|
||||||
result = []
|
result = []
|
||||||
|
|
||||||
if program && program.cfp && program.events
|
if program&.cfp && program.events
|
||||||
submissions = program.events.select(:week).group(:week).order(:week).count
|
submissions = program.events.select(:week).group(:week).order(:week).count
|
||||||
start_week = program.cfp.start_week
|
start_week = program.cfp.start_week
|
||||||
weeks = program.cfp.weeks
|
weeks = program.cfp.weeks
|
||||||
|
|
@ -168,7 +168,7 @@ class Conference < ApplicationRecord
|
||||||
# * +Array+ -> e.g. 'Submitted' => [0, 3, 3, 5] -> first week 0 events, second week 3 events.
|
# * +Array+ -> e.g. 'Submitted' => [0, 3, 3, 5] -> first week 0 events, second week 3 events.
|
||||||
def get_submissions_data
|
def get_submissions_data
|
||||||
result = {}
|
result = {}
|
||||||
if program && program.cfp && program.events
|
if program&.cfp && program.events
|
||||||
result = get_events_per_week_by_state
|
result = get_events_per_week_by_state
|
||||||
|
|
||||||
start_week = program.cfp.start_week
|
start_week = program.cfp.start_week
|
||||||
|
|
@ -182,7 +182,7 @@ class Conference < ApplicationRecord
|
||||||
result[state] = pad_array_left_not_kumulative(start_week, values)
|
result[state] = pad_array_left_not_kumulative(start_week, values)
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
result['Weeks'] = weeks > 0 ? (1..weeks).to_a : 0
|
result['Weeks'] = weeks.positive? ? (1..weeks).to_a : 0
|
||||||
end
|
end
|
||||||
result
|
result
|
||||||
end
|
end
|
||||||
|
|
@ -256,7 +256,7 @@ class Conference < ApplicationRecord
|
||||||
result[Ticket.find(ticket).title] = pad_array_left_not_kumulative(start_week, values)
|
result[Ticket.find(ticket).title] = pad_array_left_not_kumulative(start_week, values)
|
||||||
end
|
end
|
||||||
|
|
||||||
result['Weeks'] = weeks > 0 ? (1..weeks).to_a : 0
|
result['Weeks'] = weeks.positive? ? (1..weeks).to_a : 0
|
||||||
end
|
end
|
||||||
result
|
result
|
||||||
end
|
end
|
||||||
|
|
@ -269,15 +269,14 @@ class Conference < ApplicationRecord
|
||||||
def registration_weeks
|
def registration_weeks
|
||||||
result = 0
|
result = 0
|
||||||
weeks = 0
|
weeks = 0
|
||||||
if registration_period &&
|
if registration_period&.start_date &&
|
||||||
registration_period.start_date &&
|
|
||||||
registration_period.end_date
|
registration_period.end_date
|
||||||
weeks = Date.new(registration_period.start_date.year, 12, 31)
|
weeks = Date.new(registration_period.start_date.year, 12, 31)
|
||||||
.strftime('%W').to_i
|
.strftime('%W').to_i
|
||||||
|
|
||||||
result = get_registration_end_week - get_registration_start_week + 1
|
result = get_registration_end_week - get_registration_start_week + 1
|
||||||
end
|
end
|
||||||
result < 0 ? result + weeks : result
|
result.negative? ? result + weeks : result
|
||||||
end
|
end
|
||||||
|
|
||||||
##
|
##
|
||||||
|
|
@ -343,7 +342,7 @@ class Conference < ApplicationRecord
|
||||||
tracks: tracks_set?,
|
tracks: tracks_set?,
|
||||||
event_types: event_types_set?,
|
event_types: event_types_set?,
|
||||||
difficulty_levels: difficulty_levels_set?,
|
difficulty_levels: difficulty_levels_set?,
|
||||||
splashpage: splashpage && splashpage.public?
|
splashpage: splashpage&.public?
|
||||||
}
|
}
|
||||||
|
|
||||||
result.update(
|
result.update(
|
||||||
|
|
@ -449,11 +448,11 @@ class Conference < ApplicationRecord
|
||||||
i += 1
|
i += 1
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
if others > 0
|
if others.positive?
|
||||||
result['Others'] = { 'value' => others, 'color' => next_color(i) }
|
result['Others'] = { 'value' => others, 'color' => next_color(i) }
|
||||||
i += 1
|
i += 1
|
||||||
end
|
end
|
||||||
result['None'] = { 'value' => none, 'color' => next_color(i) } if none > 0
|
result['None'] = { 'value' => none, 'color' => next_color(i) } if none.positive?
|
||||||
result
|
result
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|
@ -719,7 +718,7 @@ class Conference < ApplicationRecord
|
||||||
# * +True+ -> If the registration limit has been reached or exceeded
|
# * +True+ -> If the registration limit has been reached or exceeded
|
||||||
# * +False+ -> If the registration limit hasn't been exceeded
|
# * +False+ -> If the registration limit hasn't been exceeded
|
||||||
def registration_limit_exceeded?
|
def registration_limit_exceeded?
|
||||||
registration_limit > 0 && registrations.count + program.speakers.confirmed.unregistered(program.conference).count >= registration_limit
|
registration_limit.positive? && registrations.count + program.speakers.confirmed.unregistered(program.conference).count >= registration_limit
|
||||||
end
|
end
|
||||||
|
|
||||||
# Returns an hexadecimal color given a collection. The returned color changed
|
# Returns an hexadecimal color given a collection. The returned color changed
|
||||||
|
|
@ -757,7 +756,7 @@ class Conference < ApplicationRecord
|
||||||
# * +True+ -> if accepted booths are equal to the booth limit
|
# * +True+ -> if accepted booths are equal to the booth limit
|
||||||
# * +False+ -> Accepted booths have not reached the booth limit
|
# * +False+ -> Accepted booths have not reached the booth limit
|
||||||
def maximum_accepted_booths?
|
def maximum_accepted_booths?
|
||||||
booth_limit > 0 && booths.accepted.count + booths.confirmed.count >= booth_limit
|
booth_limit.positive? && booths.accepted.count + booths.confirmed.count >= booth_limit
|
||||||
end
|
end
|
||||||
|
|
||||||
##
|
##
|
||||||
|
|
@ -829,7 +828,7 @@ class Conference < ApplicationRecord
|
||||||
# Reports an error when such a condition is found
|
# Reports an error when such a condition is found
|
||||||
def valid_times_range?
|
def valid_times_range?
|
||||||
if start_hour && end_hour
|
if start_hour && end_hour
|
||||||
errors.add(:start_hour, 'is lower than 0') if start_hour < 0
|
errors.add(:start_hour, 'is lower than 0') if start_hour.negative?
|
||||||
errors.add(:end_hour, 'is lower or equal than start hour') if end_hour <= start_hour
|
errors.add(:end_hour, 'is lower or equal than start hour') if end_hour <= start_hour
|
||||||
errors.add(:end_hour, 'is greater than 24') if end_hour > 24
|
errors.add(:end_hour, 'is greater than 24') if end_hour > 24
|
||||||
end
|
end
|
||||||
|
|
@ -843,7 +842,7 @@ class Conference < ApplicationRecord
|
||||||
def weeks(start_week, end_week)
|
def weeks(start_week, end_week)
|
||||||
weeks = end_week - start_week + 1
|
weeks = end_week - start_week + 1
|
||||||
weeks_of_year = Date.new(start_date.year, 12, 31).strftime('%W').to_i
|
weeks_of_year = Date.new(start_date.year, 12, 31).strftime('%W').to_i
|
||||||
weeks < 0 ? weeks + weeks_of_year : weeks
|
weeks.negative? ? weeks + weeks_of_year : weeks
|
||||||
end
|
end
|
||||||
|
|
||||||
##
|
##
|
||||||
|
|
@ -961,7 +960,7 @@ class Conference < ApplicationRecord
|
||||||
# * +True+ -> One difficulty level or more
|
# * +True+ -> One difficulty level or more
|
||||||
# * +False+ -> No diffculty level
|
# * +False+ -> No diffculty level
|
||||||
def difficulty_levels_set?
|
def difficulty_levels_set?
|
||||||
program.difficulty_levels.count > 0
|
program.difficulty_levels.count.positive?
|
||||||
end
|
end
|
||||||
|
|
||||||
##
|
##
|
||||||
|
|
@ -971,7 +970,7 @@ class Conference < ApplicationRecord
|
||||||
# * +True+ -> One difficulty level or more
|
# * +True+ -> One difficulty level or more
|
||||||
# * +False+ -> No diffculty level
|
# * +False+ -> No diffculty level
|
||||||
def event_types_set?
|
def event_types_set?
|
||||||
program.event_types.count > 0
|
program.event_types.count.positive?
|
||||||
end
|
end
|
||||||
|
|
||||||
##
|
##
|
||||||
|
|
@ -981,7 +980,7 @@ class Conference < ApplicationRecord
|
||||||
# * +True+ -> One track or more
|
# * +True+ -> One track or more
|
||||||
# * +False+ -> No track
|
# * +False+ -> No track
|
||||||
def tracks_set?
|
def tracks_set?
|
||||||
program.tracks.count > 0
|
program.tracks.count.positive?
|
||||||
end
|
end
|
||||||
|
|
||||||
##
|
##
|
||||||
|
|
@ -991,7 +990,7 @@ class Conference < ApplicationRecord
|
||||||
# * +True+ -> One room or more
|
# * +True+ -> One room or more
|
||||||
# * +False+ -> No room
|
# * +False+ -> No room
|
||||||
def rooms_set?
|
def rooms_set?
|
||||||
venue.present? && venue.rooms.count > 0
|
venue.present? && venue.rooms.count.positive?
|
||||||
end
|
end
|
||||||
|
|
||||||
# Checks if the conference has a venue object.
|
# Checks if the conference has a venue object.
|
||||||
|
|
@ -1097,19 +1096,19 @@ class Conference < ApplicationRecord
|
||||||
# * +hash+ -> hash
|
# * +hash+ -> hash
|
||||||
def self.calculate_user_distribution_hash(active_user, unconfirmed_user, dead_user)
|
def self.calculate_user_distribution_hash(active_user, unconfirmed_user, dead_user)
|
||||||
result = {}
|
result = {}
|
||||||
if active_user > 0
|
if active_user.positive?
|
||||||
result['Active'] = {
|
result['Active'] = {
|
||||||
'color' => 'green',
|
'color' => 'green',
|
||||||
'value' => active_user
|
'value' => active_user
|
||||||
}
|
}
|
||||||
end
|
end
|
||||||
if unconfirmed_user > 0
|
if unconfirmed_user.positive?
|
||||||
result['Unconfirmed'] = {
|
result['Unconfirmed'] = {
|
||||||
'color' => 'red',
|
'color' => 'red',
|
||||||
'value' => unconfirmed_user
|
'value' => unconfirmed_user
|
||||||
}
|
}
|
||||||
end
|
end
|
||||||
if dead_user > 0
|
if dead_user.positive?
|
||||||
result['Dead'] = {
|
result['Dead'] = {
|
||||||
'color' => 'black',
|
'color' => 'black',
|
||||||
'value' => dead_user
|
'value' => dead_user
|
||||||
|
|
|
||||||
|
|
@ -120,7 +120,15 @@ class Event < ApplicationRecord
|
||||||
@total_rating += vote.rating
|
@total_rating += vote.rating
|
||||||
end
|
end
|
||||||
@total = votes.size
|
@total = votes.size
|
||||||
@total_rating > 0 ? number_with_precision(@total_rating / @total.to_f, precision: 2, strip_insignificant_zeros: true) : 0
|
if @total_rating.positive?
|
||||||
|
number_with_precision(
|
||||||
|
@total_rating / @total.to_f,
|
||||||
|
precision: 2,
|
||||||
|
strip_insignificant_zeros: true
|
||||||
|
)
|
||||||
|
else
|
||||||
|
0
|
||||||
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
# get event speakers with the event sumbmitter at the first position
|
# get event speakers with the event sumbmitter at the first position
|
||||||
|
|
@ -310,7 +318,7 @@ class Event < ApplicationRecord
|
||||||
|
|
||||||
def before_end_of_conference
|
def before_end_of_conference
|
||||||
errors
|
errors
|
||||||
.add(:created_at, "can't be after the conference end date!") if program.conference && program.conference.end_date &&
|
.add(:created_at, "can't be after the conference end date!") if program.conference&.end_date &&
|
||||||
(Date.today > program.conference.end_date)
|
(Date.today > program.conference.end_date)
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|
@ -322,7 +330,7 @@ class Event < ApplicationRecord
|
||||||
# Allow only confirmed tracks that belong to the same program as the event
|
# Allow only confirmed tracks that belong to the same program as the event
|
||||||
#
|
#
|
||||||
def valid_track
|
def valid_track
|
||||||
return unless track && track.program && program
|
return unless track&.program && program
|
||||||
errors.add(:track, 'is invalid') unless track.confirmed? && track.program == program
|
errors.add(:track, 'is invalid') unless track.confirmed? && track.program == program
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -80,7 +80,7 @@ class Program < ApplicationRecord
|
||||||
tracks.self_organized.confirmed.order(start_date: :asc).each do |track|
|
tracks.self_organized.confirmed.order(start_date: :asc).each do |track|
|
||||||
event_schedules += track.selected_schedule.event_schedules.order(start_time: :asc) if track.selected_schedule
|
event_schedules += track.selected_schedule.event_schedules.order(start_time: :asc) if track.selected_schedule
|
||||||
end
|
end
|
||||||
event_schedules.sort_by(&:start_time) if event_schedules
|
event_schedules&.sort_by(&:start_time)
|
||||||
end
|
end
|
||||||
|
|
||||||
##
|
##
|
||||||
|
|
@ -134,7 +134,7 @@ class Program < ApplicationRecord
|
||||||
# * +false+ -> If rating is not enabled
|
# * +false+ -> If rating is not enabled
|
||||||
# * +true+ -> If rating is enabled
|
# * +true+ -> If rating is enabled
|
||||||
def rating_enabled?
|
def rating_enabled?
|
||||||
rating && rating > 0
|
rating&.positive?
|
||||||
end
|
end
|
||||||
|
|
||||||
##
|
##
|
||||||
|
|
@ -240,7 +240,9 @@ class Program < ApplicationRecord
|
||||||
# Check if schedule_interval is a divisor of 60 minutes
|
# Check if schedule_interval is a divisor of 60 minutes
|
||||||
#
|
#
|
||||||
def schedule_interval_divisor_60
|
def schedule_interval_divisor_60
|
||||||
errors.add(:schedule_interval, 'must be a divisor of 60') if schedule_interval > 0 && 60 % schedule_interval > 0
|
if schedule_interval.positive? && 60 % schedule_interval.positive?
|
||||||
|
errors.add(:schedule_interval, 'must be a divisor of 60')
|
||||||
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
##
|
##
|
||||||
|
|
@ -248,7 +250,7 @@ class Program < ApplicationRecord
|
||||||
#
|
#
|
||||||
def unschedule_unfit_events
|
def unschedule_unfit_events
|
||||||
unfit_schedules = event_schedules.select do |event_schedule|
|
unfit_schedules = event_schedules.select do |event_schedule|
|
||||||
event_schedule.start_time.min % schedule_interval > 0
|
event_schedule.start_time.min % schedule_interval.positive?
|
||||||
end
|
end
|
||||||
EventSchedule.where(id: unfit_schedules.map(&:id)).destroy_all
|
EventSchedule.where(id: unfit_schedules.map(&:id)).destroy_all
|
||||||
end
|
end
|
||||||
|
|
|
||||||
|
|
@ -77,7 +77,8 @@ class Registration < ApplicationRecord
|
||||||
end
|
end
|
||||||
|
|
||||||
def registration_limit_not_exceed
|
def registration_limit_not_exceed
|
||||||
if conference.registration_limit > 0 && conference.registrations(:reload).count >= conference.registration_limit
|
if conference.registration_limit.positive? &&
|
||||||
|
conference.registrations(:reload).count >= conference.registration_limit
|
||||||
errors.add(:base, 'Registration limit exceeded')
|
errors.add(:base, 'Registration limit exceeded')
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
|
||||||
|
|
@ -11,10 +11,10 @@ class RegistrationPeriod < ApplicationRecord
|
||||||
|
|
||||||
def before_end_of_conference
|
def before_end_of_conference
|
||||||
errors
|
errors
|
||||||
.add(:start_date, "can't be after the conference end date (#{conference.end_date})") if conference && conference.end_date && start_date && (start_date > conference.end_date)
|
.add(:start_date, "can't be after the conference end date (#{conference.end_date})") if conference&.end_date && start_date && (start_date > conference.end_date)
|
||||||
|
|
||||||
errors
|
errors
|
||||||
.add(:end_date, "can't be after the conference end date (#{conference.end_date})") if conference && conference.end_date && end_date && (end_date > conference.end_date)
|
.add(:end_date, "can't be after the conference end date (#{conference.end_date})") if conference&.end_date && end_date && (end_date > conference.end_date)
|
||||||
end
|
end
|
||||||
|
|
||||||
def start_date_before_end_date
|
def start_date_before_end_date
|
||||||
|
|
|
||||||
|
|
@ -48,7 +48,7 @@ class TicketPurchase < ApplicationRecord
|
||||||
end
|
end
|
||||||
|
|
||||||
def self.purchase_ticket(conference, quantity, ticket, user)
|
def self.purchase_ticket(conference, quantity, ticket, user)
|
||||||
if quantity > 0
|
if quantity.positive?
|
||||||
purchase = new(ticket_id: ticket.id,
|
purchase = new(ticket_id: ticket.id,
|
||||||
conference_id: conference.id,
|
conference_id: conference.id,
|
||||||
user_id: user.id,
|
user_id: user.id,
|
||||||
|
|
@ -65,7 +65,7 @@ class TicketPurchase < ApplicationRecord
|
||||||
user_id: user.id,
|
user_id: user.id,
|
||||||
paid: false).first
|
paid: false).first
|
||||||
|
|
||||||
purchase.quantity = quantity if quantity > 0
|
purchase.quantity = quantity if quantity.positive?
|
||||||
purchase
|
purchase
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -113,10 +113,8 @@ class Track < ApplicationRecord
|
||||||
def revoke_role_and_cleanup
|
def revoke_role_and_cleanup
|
||||||
role = Role.find_by(name: 'track_organizer', resource: self)
|
role = Role.find_by(name: 'track_organizer', resource: self)
|
||||||
|
|
||||||
if role
|
role&.users&.each do |user|
|
||||||
role.users.each do |user|
|
user.remove_role 'track_organizer', self
|
||||||
user.remove_role 'track_organizer', self
|
|
||||||
end
|
|
||||||
end
|
end
|
||||||
|
|
||||||
self.selected_schedule_id = nil
|
self.selected_schedule_id = nil
|
||||||
|
|
|
||||||
|
|
@ -126,7 +126,7 @@ class User < ApplicationRecord
|
||||||
def self.for_ichain_username(username, attributes)
|
def self.for_ichain_username(username, attributes)
|
||||||
user = find_by(username: username)
|
user = find_by(username: username)
|
||||||
|
|
||||||
raise UserDisabled if user && user.is_disabled
|
raise UserDisabled if user&.is_disabled
|
||||||
|
|
||||||
if user
|
if user
|
||||||
user.update_attributes(email: attributes[:email],
|
user.update_attributes(email: attributes[:email],
|
||||||
|
|
|
||||||
|
|
@ -19,7 +19,7 @@ class Venue < ApplicationRecord
|
||||||
|
|
||||||
def country_name
|
def country_name
|
||||||
name = ISO3166::Country[country]
|
name = ISO3166::Country[country]
|
||||||
name.name if name
|
name&.name
|
||||||
end
|
end
|
||||||
|
|
||||||
def location?
|
def location?
|
||||||
|
|
|
||||||
|
|
@ -1,5 +1,6 @@
|
||||||
- cache ['admin/events/index', conference_id, event, event.submitter, event.speakers, event_types, tracks, difficulty_levels] do
|
- cache ['admin/events/index', conference_id, event, event.submitter,
|
||||||
%tr{id: "event-#{event.id}"}
|
event.speakers, event_types, tracks, difficulty_levels] do
|
||||||
|
%tr{ id: "event-#{event.id}" }
|
||||||
%td
|
%td
|
||||||
= event.id
|
= event.id
|
||||||
|
|
||||||
|
|
@ -38,7 +39,8 @@
|
||||||
= event_switch_checkbox(event, :require_registration, conference_id)
|
= event_switch_checkbox(event, :require_registration, conference_id)
|
||||||
- if event.require_registration
|
- if event.require_registration
|
||||||
= link_to registered_text(event),
|
= link_to registered_text(event),
|
||||||
registrations_admin_conference_program_event_path(conference_id, event),
|
registrations_admin_conference_program_event_path(conference_id,
|
||||||
|
event),
|
||||||
class: 'btn btn-xs btn-default'
|
class: 'btn btn-xs btn-default'
|
||||||
|
|
||||||
%td.text-center{ data: { order: event.is_highlight.to_s } }
|
%td.text-center{ data: { order: event.is_highlight.to_s } }
|
||||||
|
|
|
||||||
|
|
@ -2,11 +2,11 @@
|
||||||
%div{ data: { toggle: 'tooltip' }, title: rating_tooltip(event, max_rating) }<
|
%div{ data: { toggle: 'tooltip' }, title: rating_tooltip(event, max_rating) }<
|
||||||
= rating_stars(event.average_rating, max_rating, avgrate: true)
|
= rating_stars(event.average_rating, max_rating, avgrate: true)
|
||||||
|
|
||||||
%div.clearfix
|
.clearfix
|
||||||
- if event.voted?(current_user)
|
- if event.voted?(current_user)
|
||||||
%span.label.label-success
|
%span.label.label-success
|
||||||
You voted:
|
You voted:
|
||||||
= "#{event.user_rating(current_user)}/#{max_rating}"
|
= rating_fraction(event.user_rating(current_user), max_rating)
|
||||||
- else
|
- else
|
||||||
%span.label.label-danger
|
%span.label.label-danger
|
||||||
Not rated
|
Not rated
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
%div.btn-group
|
.btn-group
|
||||||
%button.btn.btn-success.dropdown-toggle{ data: { toggle: 'dropdown' } }
|
%button.btn.btn-success.dropdown-toggle{ data: { toggle: 'dropdown' } }
|
||||||
Export
|
Export
|
||||||
= export_format.upcase
|
= export_format.upcase
|
||||||
|
|
|
||||||
|
|
@ -17,7 +17,7 @@ class MigrateDataRemoveColumnIncludeCfpInSplashAddColumnIncludeCfp < ActiveRecor
|
||||||
TempConference.all.each do |conference|
|
TempConference.all.each do |conference|
|
||||||
cfp = TempCallForPaper.find_by(conference_id: conference.id)
|
cfp = TempCallForPaper.find_by(conference_id: conference.id)
|
||||||
|
|
||||||
if cfp && cfp.include_cfp_in_splash
|
if cfp&.include_cfp_in_splash
|
||||||
splashpage = TempSplashpage.find_or_initialize_by(conference_id: conference.id)
|
splashpage = TempSplashpage.find_or_initialize_by(conference_id: conference.id)
|
||||||
splashpage.include_cfp = cfp.include_cfp_in_splash # true
|
splashpage.include_cfp = cfp.include_cfp_in_splash # true
|
||||||
splashpage.save!
|
splashpage.save!
|
||||||
|
|
|
||||||
|
|
@ -5,7 +5,7 @@ namespace :events_registrations do
|
||||||
duplicates = EventsRegistration.all.map { |er| er.id if er.valid? == false}.compact
|
duplicates = EventsRegistration.all.map { |er| er.id if er.valid? == false}.compact
|
||||||
|
|
||||||
puts "Duplicates found: #{duplicates.count}"
|
puts "Duplicates found: #{duplicates.count}"
|
||||||
if duplicates.count > 0
|
if duplicates.count.positive?
|
||||||
puts "With IDs: #{duplicates}"
|
puts "With IDs: #{duplicates}"
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -19,16 +19,16 @@ describe EventsHelper, type: :helper do
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
describe "#rating_tooltip" do
|
describe '#rating_tooltip' do
|
||||||
let(:max_rating) { 5 }
|
let(:max_rating) { 5 }
|
||||||
let(:event) { create(:event) }
|
let(:event) { create(:event) }
|
||||||
let(:average_rating) { "#{event.average_rating}/#{max_rating}" }
|
let(:average_rating) { "#{event.average_rating}/#{max_rating}" }
|
||||||
let(:vote_count) { pluralize(event.voters.length, 'vote') }
|
let(:vote_count) { pluralize(event.voters.length, 'vote') }
|
||||||
|
|
||||||
it "includes the average rating" do
|
it 'includes the average rating' do
|
||||||
expect(rating_tooltip(event, max_rating)).to match(average_rating)
|
expect(rating_tooltip(event, max_rating)).to match(average_rating)
|
||||||
end
|
end
|
||||||
it "includes the vote count" do
|
it 'includes the vote count' do
|
||||||
expect(rating_tooltip(event, max_rating)).to match(vote_count)
|
expect(rating_tooltip(event, max_rating)).to match(vote_count)
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue