Class: DceLti::UserInitializer

Inherits:
Object
  • Object
show all
Defined in:
app/services/dce_lti/user_initializer.rb

Constant Summary collapse

TOOL_PROVIDER_ATTRIBUTES =
%i|
roles
lis_person_contact_email_primary
lis_person_name_family
lis_person_name_full
lis_person_name_given
lis_person_sourcedid
user_image
|

Class Method Summary collapse

Class Method Details

.find_from(tool_provider) ⇒ Object



13
14
15
16
17
18
19
20
# File 'app/services/dce_lti/user_initializer.rb', line 13

def self.find_from(tool_provider)
  User.find_or_create_by(lti_user_id: tool_provider.user_id).tap do |user|
    TOOL_PROVIDER_ATTRIBUTES.each do |attribute|
      user.send("#{attribute}=", tool_provider.send(attribute))
    end
    user.save
  end
end