Sha256: 8ad2840a3b891aee9dc0509163cb36071b6fe8d53608ed4af2d3b996f3e221c2
Contents?: true
Size: 922 Bytes
Versions: 2
Compression:
Stored size: 922 Bytes
Contents
# # # AUTO GENERATED LIVE EVENT # This was auto generated by the CanvasSync Gem. # You can customize it as needed, but make sure you test # any changes you make to the auto generated methods. # module LiveEvents class UserEvent < LiveEvents::BaseEvent # The following is provided in the live events call: # { # user_id: user.global_id, # uuid: user.uuid, # name: user.name, # short_name: user.short_name, # workflow_state: user.workflow_state, # created_at: user.created_at, # updated_at: user.updated_at # } def perform(event_payload) super attrs = { canvas_user_id: local_canvas_id(payload[:user_id]), status: payload[:workflow_state], } create_or_update(attrs) end private def create_or_update(attrs) user = User.where(canvas_user_id: attrs[:canvas_user_id]).first_or_initialize user.assign_attributes(attrs) user.save! end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
canvas_sync-0.4.1 | spec/dummy/app/services/live_events/user_event.rb |
canvas_sync-0.4.0 | spec/dummy/app/services/live_events/user_event.rb |