diff --git a/.rubocop_todo.yml b/.rubocop_todo.yml index 6e1c0ce0a..ea6a6d82a 100644 --- a/.rubocop_todo.yml +++ b/.rubocop_todo.yml @@ -108,21 +108,6 @@ Metrics/PerceivedComplexity: - 'app/services/invitation_manager.rb' - 'lib/omniauth/strategies/codebar.rb' -# Offense count: 10 -# Configuration parameters: NamePrefix, ForbiddenPrefixes, AllowedMethods, MethodDefinitionMacros, UseSorbetSigs. -# NamePrefix: is_, has_, have_, does_ -# ForbiddenPrefixes: is_, has_, have_, does_ -# AllowedMethods: is_a? -# MethodDefinitionMacros: define_method, define_singleton_method -Naming/PredicatePrefix: - Exclude: - - 'app/controllers/application_controller.rb' - - 'app/models/workshop.rb' - - 'app/policies/application_policy.rb' - - 'app/policies/chapter_policy.rb' - - 'app/policies/event_policy.rb' - - 'app/policies/workshop_policy.rb' - # Offense count: 2 RSpec/AnyInstance: Exclude: diff --git a/app/controllers/application_controller.rb b/app/controllers/application_controller.rb index dbbb5b83b..bdd1ab567 100644 --- a/app/controllers/application_controller.rb +++ b/app/controllers/application_controller.rb @@ -127,15 +127,15 @@ def manager? helper_method :manager? helper_method :admin_namespace? - def is_logged_in? + def require_login unless logged_in? flash[:notice] = t('notifications.not_logged_in') redirect_to root_path end end - def has_access? - is_logged_in? + def require_access + require_login end def admin_namespace? diff --git a/app/controllers/dashboard_controller.rb b/app/controllers/dashboard_controller.rb index 90e797139..341b7c8fb 100644 --- a/app/controllers/dashboard_controller.rb +++ b/app/controllers/dashboard_controller.rb @@ -1,5 +1,5 @@ class DashboardController < ApplicationController - before_action :is_logged_in?, only: %i[dashboard] + before_action :require_login, only: %i[dashboard] skip_before_action :accept_terms, except: %i[dashboard show] helper_method :year_param diff --git a/app/controllers/events_controller.rb b/app/controllers/events_controller.rb index bb3efbfd4..067cefa68 100644 --- a/app/controllers/events_controller.rb +++ b/app/controllers/events_controller.rb @@ -1,7 +1,7 @@ require 'services/ticket' class EventsController < ApplicationController - before_action :is_logged_in?, only: %i[student coach] + before_action :require_login, only: %i[student coach] def index redirect_to upcoming_events_path diff --git a/app/controllers/invitations_controller.rb b/app/controllers/invitations_controller.rb index 889c4950f..4c0130a76 100644 --- a/app/controllers/invitations_controller.rb +++ b/app/controllers/invitations_controller.rb @@ -1,5 +1,5 @@ class InvitationsController < ApplicationController - before_action :is_logged_in?, only: [:index] + before_action :require_login, only: [:index] before_action :set_invitation, only: %i[show attend reject] def index diff --git a/app/controllers/mailing_lists_controller.rb b/app/controllers/mailing_lists_controller.rb index ff687e672..24032ba83 100644 --- a/app/controllers/mailing_lists_controller.rb +++ b/app/controllers/mailing_lists_controller.rb @@ -1,7 +1,7 @@ class MailingListsController < ApplicationController include MailingListConcerns - before_action :has_access? + before_action :require_access def create subscribe_to_newsletter(current_user) diff --git a/app/controllers/member/details_controller.rb b/app/controllers/member/details_controller.rb index 9652a7f5d..40cde7b6c 100644 --- a/app/controllers/member/details_controller.rb +++ b/app/controllers/member/details_controller.rb @@ -4,7 +4,7 @@ class Member::DetailsController < ApplicationController before_action :set_member before_action :suppress_notices - before_action :is_logged_in?, only: %i[edit] + before_action :require_login, only: %i[edit] def edit accept_terms diff --git a/app/controllers/payments_controller.rb b/app/controllers/payments_controller.rb index 12aa06355..702fd755d 100644 --- a/app/controllers/payments_controller.rb +++ b/app/controllers/payments_controller.rb @@ -1,5 +1,5 @@ class PaymentsController < ApplicationController - before_action :is_logged_in? + before_action :require_login def new; end diff --git a/app/controllers/subscriptions_controller.rb b/app/controllers/subscriptions_controller.rb index b424a52b1..cae206eb7 100644 --- a/app/controllers/subscriptions_controller.rb +++ b/app/controllers/subscriptions_controller.rb @@ -1,5 +1,5 @@ class SubscriptionsController < ApplicationController - before_action :has_access? + before_action :require_access def index @mailing_list = MailingListForm.new diff --git a/app/models/workshop.rb b/app/models/workshop.rb index ed398a8e7..d89f23f13 100644 --- a/app/models/workshop.rb +++ b/app/models/workshop.rb @@ -59,12 +59,12 @@ def coach_waiting_list waiting_list.select(&:for_coach?) end - def has_host? + def host? WorkshopSponsor.exists?(host: true, workshop: self) end - def has_valid_host? - has_host? && host.address.present? + def valid_host? + host? && host.address.present? end def rsvp_available? diff --git a/app/policies/application_policy.rb b/app/policies/application_policy.rb index 57b95f3f6..f87d9903d 100644 --- a/app/policies/application_policy.rb +++ b/app/policies/application_policy.rb @@ -40,13 +40,13 @@ def scope private - def is_admin_or_chapter_organiser? + def admin_or_chapter_organiser? return false unless user - user.is_admin? || user.has_role?(:organiser) || is_chapter_organiser? + user.is_admin? || user.has_role?(:organiser) || chapter_organiser? end - def is_chapter_organiser? + def chapter_organiser? Chapter.find_roles(:organiser, user).any? end end diff --git a/app/policies/chapter_policy.rb b/app/policies/chapter_policy.rb index 9e380222b..c3a798683 100644 --- a/app/policies/chapter_policy.rb +++ b/app/policies/chapter_policy.rb @@ -4,28 +4,28 @@ def index? end def create? - is_admin_or_organiser? + admin_or_organiser? end def show? - is_admin_or_organiser? + admin_or_organiser? end def edit? - is_admin_or_organiser? + admin_or_organiser? end def update? - is_admin_or_organiser? + admin_or_organiser? end def members? - is_admin_or_organiser? + admin_or_organiser? end private - def is_admin_or_organiser? + def admin_or_organiser? user.is_admin? || user.has_role?(:organiser, record) || user.has_role?(:organiser) end end diff --git a/app/policies/event_policy.rb b/app/policies/event_policy.rb index c828c8d59..26bf8c9df 100644 --- a/app/policies/event_policy.rb +++ b/app/policies/event_policy.rb @@ -1,15 +1,15 @@ class EventPolicy < ApplicationPolicy def invite? - is_admin_or_organiser? + admin_or_organiser? end def show? - is_admin_or_organiser? + admin_or_organiser? end private - def is_admin_or_organiser? + def admin_or_organiser? return false unless user user.is_admin? || user.has_role?(:organiser, record) diff --git a/app/policies/group_policy.rb b/app/policies/group_policy.rb index e164781f9..5e3d40e70 100644 --- a/app/policies/group_policy.rb +++ b/app/policies/group_policy.rb @@ -4,6 +4,6 @@ def create? end def show? - is_admin_or_chapter_organiser? + admin_or_chapter_organiser? end end diff --git a/app/policies/invitation_log_policy.rb b/app/policies/invitation_log_policy.rb index 852e71063..dc7e80c9d 100644 --- a/app/policies/invitation_log_policy.rb +++ b/app/policies/invitation_log_policy.rb @@ -1,9 +1,9 @@ class InvitationLogPolicy < ApplicationPolicy def index? - is_admin_or_chapter_organiser? + admin_or_chapter_organiser? end def show? - is_admin_or_chapter_organiser? + admin_or_chapter_organiser? end end diff --git a/app/policies/sponsor_policy.rb b/app/policies/sponsor_policy.rb index 61ee7a44b..2e81aadb9 100644 --- a/app/policies/sponsor_policy.rb +++ b/app/policies/sponsor_policy.rb @@ -1,21 +1,21 @@ class SponsorPolicy < ApplicationPolicy def index? - is_admin_or_chapter_organiser? + admin_or_chapter_organiser? end def create? - is_admin_or_chapter_organiser? + admin_or_chapter_organiser? end def show? - is_admin_or_chapter_organiser? + admin_or_chapter_organiser? end def edit? - is_admin_or_chapter_organiser? + admin_or_chapter_organiser? end def update? - is_admin_or_chapter_organiser? + admin_or_chapter_organiser? end end diff --git a/app/policies/workshop_policy.rb b/app/policies/workshop_policy.rb index 4edb850c7..f32a631ca 100644 --- a/app/policies/workshop_policy.rb +++ b/app/policies/workshop_policy.rb @@ -8,24 +8,24 @@ def create? end def show? - is_admin_or_chapter_organiser? + admin_or_chapter_organiser? end def invite? - is_admin_or_chapter_organiser? + admin_or_chapter_organiser? end def update? - is_admin_or_chapter_organiser? + admin_or_chapter_organiser? end def destroy? - is_admin_or_chapter_organiser? + admin_or_chapter_organiser? end private - def is_chapter_organiser? + def chapter_organiser? user.has_role?(:organiser, record) || user.has_role?(:organiser, record.chapter) || user.has_role?(:organiser, Chapter) diff --git a/app/views/admin/workshops/show.html.haml b/app/views/admin/workshops/show.html.haml index a2964c542..017207f6e 100644 --- a/app/views/admin/workshops/show.html.haml +++ b/app/views/admin/workshops/show.html.haml @@ -6,7 +6,7 @@ = link_to '#', class: 'btn btn-primary py-3 disabled', title: t('messages.already_taken_place') do %i.fas.fa-paper-plane %label.text-white Invite - - elsif (@workshop.has_valid_host? || @workshop.virtual?) and @workshop.invitable? + - elsif (@workshop.valid_host? || @workshop.virtual?) and @workshop.invitable? = link_to admin_workshop_send_invites_path(@workshop), class: 'btn btn-primary py-3' do %i.fas.fa-paper-plane %label.text-white Invite