1
0
mirror of https://github.com/LaCasemate/fab-manager.git synced 2024-12-01 12:24:28 +01:00
fab-manager/app/processors/members_processor.rb

45 lines
1.1 KiB
Ruby

class MembersProcessor
attr_accessor :member
def initialize(member)
@member = member
end
def update(params)
not_complete = self.member.need_completion?
up_result = self.member.update(params)
if up_result
notify_user_profile_complete(not_complete)
end
up_result
end
def merge_from_sso(user)
merge_result = self.member.merge_from_sso(user)
if merge_result
notify_admin_user_merged
end
merge_result
end
private
def notify_user_profile_complete(previous_state)
if previous_state and not self.member.need_completion?
NotificationCenter.call type: :notify_user_profile_complete,
receiver: self.member,
attached_object: self.member
NotificationCenter.call type: :notify_admin_profile_complete,
receiver: User.admins,
attached_object: self.member
end
end
def notify_admin_user_merged
NotificationCenter.call type: :notify_admin_user_merged,
receiver: User.admins,
attached_object: self.member
end
end