Class: WorkflowKit::RemoveFromGroupBrick
- Inherits:
-
Brick
- Object
- Brick
- WorkflowKit::RemoveFromGroupBrick
- Defined in:
- app/models/workflow_kit/remove_from_group_brick.rb
Instance Method Summary collapse
Instance Method Details
#description ⇒ Object
6 7 8 9 |
# File 'app/models/workflow_kit/remove_from_group_brick.rb', line 6 def description "Quit the membership of the user that is passed to this workflow as parameter " + "in the group that is passed to the workflow as parameter." end |
#execute(params) ⇒ Object
10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 |
# File 'app/models/workflow_kit/remove_from_group_brick.rb', line 10 def execute( params ) raise 'no user_id given' unless params[ :user_id ] raise 'no group_id given' unless params[ :group_id ] user = User.find( params[ :user_id ] ) group = Group.find( params[ :group_id ] ) membership = UserGroupMembership.find_by( user: user, group: group ) if membership if membership.direct? membership.invalidate at: 2.seconds.ago else membership.direct_memberships.each { |m| m.invalidate at: 2.seconds.ago } end end end |
#name ⇒ Object
3 4 5 |
# File 'app/models/workflow_kit/remove_from_group_brick.rb', line 3 def name "Remove User from Group" end |