Class: Decidim::Meetings::Admin::MeetingPermissions
- Inherits:
-
DefaultPermissions
- Object
- DefaultPermissions
- Decidim::Meetings::Admin::MeetingPermissions
- Defined in:
- app/permissions/decidim/meetings/admin/meeting_permissions.rb
Instance Method Summary collapse
-
#permissions ⇒ Object
rubocop:disable Metrics/CyclomaticComplexity,Metrics/PerceivedComplexity.
Instance Method Details
#permissions ⇒ Object
rubocop:disable Metrics/CyclomaticComplexity,Metrics/PerceivedComplexity
7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 |
# File 'app/permissions/decidim/meetings/admin/meeting_permissions.rb', line 7 def # rubocop:disable Metrics/CyclomaticComplexity,Metrics/PerceivedComplexity return unless user return unless .scope == :admin return unless subject == :meeting if meeting && !meeting.official? disallow! return end case .action when :close, :copy, :export_registrations, :update, :read_invites toggle_allow(meeting.present?) when :invite_attendee toggle_allow(meeting.present? && meeting.registrations_enabled?) when :validate_registration_code toggle_allow( meeting.present? && meeting.registrations_enabled? && meeting.component.settings.registration_code_enabled ) when :create allow! end end |