Fix Rubocop issues

This commit is contained in:
CactusPuppy 2021-02-18 21:03:28 -08:00
parent a4a6306198
commit d63a22c54e
No known key found for this signature in database
GPG key ID: 4B33B0A3E15E2C82
34 changed files with 151 additions and 137 deletions

View file

@ -9,7 +9,7 @@ module Admin
def index
@events = Event.accessible_by(current_ability).where(program: @program,
state: [:confirmed, :unconfirmed])
state: [:confirmed, :unconfirmed])
@events_commercials = Commercial.where(commercialable_type: 'Event', commercialable_id: @events.pluck(:id))
@events_missing_commercial = @events.where.not(id: @events_commercials.pluck(:commercialable_id))
@events_with_requirements = @events.where.not(description: ['', nil])

View file

@ -10,22 +10,22 @@ class ApplicationController < ActionController::Base
check_authorization unless: :devise_controller?
skip_authorization_check if:
def store_location
# store last url - this is needed for post-login redirect to whatever the user last visited.
return unless request.get?
def store_location
# store last url - this is needed for post-login redirect to whatever the user last visited.
return unless request.get?
if (request.path != '/accounts/sign_in' &&
request.path != '/accounts/sign_up' &&
request.path != '/accounts/password/new' &&
request.path != '/accounts/password/edit' &&
request.path != '/accounts/confirmation' &&
request.path != '/accounts/sign_out' &&
request.path != '/users/ichain_registration/ichain_sign_up' &&
!request.path.starts_with?(Devise.ichain_base_url) &&
!request.xhr?) # don't store ajax calls
session[:return_to] = request.fullpath
end
end
if (request.path != '/accounts/sign_in' &&
request.path != '/accounts/sign_up' &&
request.path != '/accounts/password/new' &&
request.path != '/accounts/password/edit' &&
request.path != '/accounts/confirmation' &&
request.path != '/accounts/sign_out' &&
request.path != '/users/ichain_registration/ichain_sign_up' &&
!request.path.starts_with?(Devise.ichain_base_url) &&
!request.xhr?) # don't store ajax calls
session[:return_to] = request.fullpath
end
end
def after_sign_in_path_for(_resource)
if (can? :view, Conference) &&

View file

@ -66,7 +66,7 @@ class ConferenceRegistrationsController < ApplicationController
end
elsif @conference.registration_ticket_required? && !current_user.supports?(@conference)
redirect_to conference_tickets_path(@conference.short_title),
error: 'You must buy a registration ticket before registering.'
error: 'You must buy a registration ticket before registering.'
else
flash.now[:error] = "Could not create your registration for #{@conference.title}: "\
"#{@registration.errors.full_messages.join('. ')}."

View file

@ -27,11 +27,13 @@ class UsersController < ApplicationController
def user_params
params.require(:user).permit(:name, :biography, :nickname, :affiliation,
:picture, :picture_cache)
:picture, :picture_cache)
end
# Somewhat of a hack: users/current/edit
# rubocop:disable Naming/MemoizedInstanceVariableName
def load_user
@user ||= (params[:id] && params[:id] != 'current' && User.find(params[:id]) || current_user)
end
# rubocop:enable Naming/MemoizedInstanceVariableName
end

View file

@ -1,4 +1,3 @@
# frozen_string_literal: true
class UserDatatable < AjaxDatatablesRails::Base

View file

@ -112,7 +112,7 @@ module ApplicationHelper
concurrent_events << other_event_schedule.event
end
end
concurrent_events.sort_by { |event_schedule| event_schedule.room&.order }
concurrent_events.sort_by { |schedule| schedule.room&.order }
end
def speaker_links(event)
@ -188,7 +188,7 @@ module ApplicationHelper
'hidden' if Date.today > conference.end_date
end
# TODO:Snap!Con: Replace this with a search for a conference logo.
# TODO: Snap!Con: Replace this with a search for a conference logo.
def nav_root_link_for(conference = nil)
path = conference&.id.present? ? conference_path(conference) : root_path
link_to(
@ -201,8 +201,8 @@ module ApplicationHelper
def nav_link_text(conference)
conference.try(:organization).try(:name) ||
ENV['OSEM_NAME'] ||
'OSEM'
ENV['OSEM_NAME'] ||
'OSEM'
end
# returns the url to be used for logo on basis of sponsorship level position

View file

@ -24,6 +24,7 @@ module ConferenceHelper
def short_ticket_description(ticket)
return unless ticket.description
markdown(ticket.description.split("\n").first&.strip)
end
end

View file

@ -1,5 +1,7 @@
# frozen_string_literal: true
# TODO: Split this module into smaller modules
# rubocop:disable Metrics/ModuleLength
module EventsHelper
##
# Includes functions related to events
@ -164,7 +166,7 @@ module EventsHelper
conference_id,
event.id,
event.send(attribute),
url: admin_conference_program_event_path(
url: admin_conference_program_event_path(
conference_id,
event,
event: { attribute => nil }
@ -183,7 +185,7 @@ module EventsHelper
if current_user.roles.where(id: conference.roles).any?
# Show Pre-Event links for any memeber of the conference team.
link_to("Join Live Event #{'(Admin link)' unless is_now}",
event.url, target: '_blank')
event.url, target: '_blank')
elsif current_user.registered_to_event?(conference)
if is_now
link_to('Join Live Event', event.url, target: '_blank')
@ -193,7 +195,7 @@ module EventsHelper
end
end
def calendar_timestamp(timestamp, timezone)
def calendar_timestamp(timestamp, _timezone)
timestamp = timestamp.in_time_zone('GMT')
timestamp -= timestamp.utc_offset
timestamp.strftime('%Y%m%dT%H%M%S')
@ -206,12 +208,12 @@ module EventsHelper
start_timestamp = calendar_timestamp(event_schedule.start_time, conference.timezone)
end_timestamp = calendar_timestamp(event_schedule.end_time, conference.timezone)
event_details = {
action: 'TEMPLATE',
text: "#{event.title} at #{conference.title}",
details: calendar_event_text(event, event_schedule, conference),
action: 'TEMPLATE',
text: "#{event.title} at #{conference.title}",
details: calendar_event_text(event, event_schedule, conference),
location: "#{event.room.name} #{event.url}",
dates: "#{start_timestamp}/#{end_timestamp}",
ctz: event_schedule.timezone
dates: "#{start_timestamp}/#{end_timestamp}",
ctz: event_schedule.timezone
}
"#{calendar_base}?#{event_details.to_param}"
end
@ -220,13 +222,13 @@ module EventsHelper
def calendar_event_text(event, event_schedule, conference)
<<~TEXT
#{conference.title} - #{event.title}
#{event_schedule.start_time.strftime("%Y %B %e - %H:%M")} #{event_schedule.timezone}
#{conference.title} - #{event.title}
#{event_schedule.start_time.strftime('%Y %B %e - %H:%M')} #{event_schedule.timezone}
More Info: #{conference_program_proposal_url(conference, event)}
Join: #{event.url}
More Info: #{conference_program_proposal_url(conference, event)}
Join: #{event.url}
#{truncate(event.abstract, length: 200)}
#{truncate(event.abstract, length: 200)}
TEXT
end
@ -256,3 +258,4 @@ module EventsHelper
end
end
end
# rubocop:enable Metrics/ModuleLength

View file

@ -184,12 +184,12 @@ module FormatHelper
return '' if text.nil?
options = {
autolink: true,
autolink: true,
space_after_headers: true,
tables: true,
strikethrough: true,
footnotes: true,
superscript: true
tables: true,
strikethrough: true,
footnotes: true,
superscript: true
}
markdown = Redcarpet::Markdown.new(Redcarpet::Render::HTML.new(escape_html: escape_html), options)
markdown.render(text).html_safe

View file

@ -68,6 +68,8 @@ class Ability
end
# Abilities for signed in users
# TODO: Refactor into multiple functions
# rubocop:disable Metrics/AbcSize
def signed_in(user)
# Abilities from not_signed_in user are also inherited
not_signed_in
@ -140,6 +142,7 @@ class Ability
user == track.submitter && !(track.accepted? || track.confirmed?)
end
end
# rubocop:enable Metrics/AbcSize
# Abilities for users with roles wandering around in non-admin views.
def common_abilities_for_admins(user)

View file

@ -30,7 +30,7 @@ class Commercial < ApplicationRecord
begin
resource = OEmbed::Providers.get(url, maxwidth: 560, maxheight: 315)
{ html: resource.html.html_safe }
rescue StandardError => exception
rescue StandardError
{ html: iframe_fallback(url) }
# { error: exception.message }
end

View file

@ -35,6 +35,7 @@
#
# index_conferences_on_organization_id (organization_id)
#
# rubocop:disable Metrics/ClassLength
class Conference < ApplicationRecord
include RevisionCount
require 'uri'
@ -86,7 +87,7 @@ class Conference < ApplicationRecord
has_many :highlighted_events,
-> { where(state: :confirmed, is_highlight: true) },
through: :program,
source: :events
source: :events
has_many :event_types, through: :program
has_many :surveys, as: :surveyable, dependent: :destroy do
@ -1234,3 +1235,4 @@ class Conference < ApplicationRecord
]
end
end
# rubocop:enable Metrics/ClassLength

View file

@ -310,7 +310,6 @@ class Event < ApplicationRecord
event_schedules.find_by(schedule_id: selected_schedule_id).try(:happening_now?)
end
##
# Returns true or false, if the event is already over or not
#

View file

@ -14,7 +14,7 @@
#
class EventUser < ApplicationRecord
ROLES = [%w[Speaker speaker], %w[Submitter submitter], %w[Moderator moderator],
%w[Volunteer volunteer]]
%w[Volunteer volunteer]]
belongs_to :event, touch: true
belongs_to :user

View file

@ -37,7 +37,7 @@ class Payment < ApplicationRecord
end
def stripe_description
#"ticket purchases(#{user.username})"
# "ticket purchases(#{user.username})"
"Tickets for #{conference.title} #{user.name} #{user.email}"
end

View file

@ -85,7 +85,7 @@ class Registration < ApplicationRecord
def user_has_registration_ticket
return if conference.registration_ticket_required? &&
TicketPurchase.where(user: user, ticket: conference.registration_tickets).paid.any?
TicketPurchase.where(user: user, ticket: conference.registration_tickets).paid.any?
errors.add(:base, 'You must purchase a registration ticket before registering')
if TicketPurchase.where(user: user, ticket: conference.registration_tickets).unpaid.any?

View file

@ -122,6 +122,7 @@ end
def count_purchased_registration_tickets(conference, purchases)
# TODO: WHAT CAUSED THIS???
return 0 unless purchases
conference.tickets.for_registration.inject(0) do |sum, registration_ticket|
sum + purchases[registration_ticket.id.to_s].to_i
end

View file

@ -101,9 +101,8 @@ class User < ApplicationRecord
[:database_authenticatable, :registerable,
:recoverable, :rememberable, :trackable, :validatable, :confirmable,
:omniauthable,
omniauth_providers: [:suse, :google, :facebook, :github, :discourse]
omniauth_providers: [:suse, :google, :facebook, :github, :discourse]]
# omniauth_providers: [:google, :discourse]
]
end
devise(*devise_modules)
@ -206,6 +205,7 @@ class User < ApplicationRecord
# Partials should *not* directly call `gravatar_url`
def profile_picture(opts = {})
return gravatar_url(opts) unless picture.present?
size = (opts[:size] || 0).to_i
if size < 50
picture.tiny.url
@ -305,7 +305,7 @@ class User < ApplicationRecord
# TODO: Use a real authorization in the right place....
def manages_volunteers?(conference)
organizer_roles = get_roles['organizer']
organizer_roles&.include?(conference.short_title) # TODO or Volunteer Coorinator.
organizer_roles&.include?(conference.short_title) # TODO: or Volunteer Coorinator.
end
def registered
@ -346,7 +346,6 @@ class User < ApplicationRecord
events.where(program_id: conference.program.id, 'event_users.event_role': 'volunteer')
end
def self.empty?
User.count == 1 && User.first.email == 'deleted@localhost.osem'
end