Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- namespace :permissions do
- desc "update members with membership permissions"
- task membership_permissions: :environment do
- permissions = [
- Permission.find_by(identifier: 'toggle_ready_status'),
- Permission.find_by(identifier: 'destroy_membership')
- ]
- memberships = Membership.creator + Membership.member
- puts "#{memberships.count} memberships found"
- memberships.each_with_index do |membership, i|
- permissions.each do |permission|
- next if PermissionsUser.exists?(user: membership.user, permission: permission, board: membership.board)
- begin
- PermissionsUser.create!(user: membership.user, permission: permission, board: membership.board)
- rescue StandardError => e
- puts "Failed to add #{permission.identifier} for #{membership.user.email}: #{e.message}"
- end
- puts "100 memberships processed - #{memberships.count - i} remains" if i % 100 == 0
- end;'ok'
- end;'ok'
- end
- end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement