Class: Decidim::DecidimAwesome::SyncAwesomeAuthorizationGroupJob

Inherits:
ApplicationJob
  • Object
show all
Defined in:
app/jobs/decidim/decidim_awesome/sync_awesome_authorization_group_job.rb

Instance Method Summary collapse

Instance Method Details

#perform(authorization_group_id) ⇒ Object



8
9
10
11
12
13
14
15
16
# File 'app/jobs/decidim/decidim_awesome/sync_awesome_authorization_group_job.rb', line 8

def perform(authorization_group_id)
  authorization_group = Decidim::DecidimAwesome::AuthorizationGroup.find_by(id: authorization_group_id)
  return unless authorization_group

  # clean up authorizations for users that are no longer members of the group
  (authorization_group.granted_in_group + authorization_group.users).each do |user|
    Decidim::DecidimAwesome::AuthorizationGroup.sync_user_authorization(user)
  end
end