restrict name to be set to lis_person_name_full (should be display name) or to lis_person_name_given (should be first name).
don't use xikolo api any longer for consumer openHPI, use the values in CodeOcean.
This commit is contained in:
@ -42,12 +42,12 @@ module Lti
|
||||
private :external_user_email
|
||||
|
||||
def external_user_name(provider)
|
||||
# save person_name_full if supplied. this is the display_name, if it is set.
|
||||
# else only save the firstname, we don't want lastnames (family names)
|
||||
if provider.lis_person_name_full
|
||||
provider.lis_person_name_full
|
||||
elsif provider.lis_person_name_given && provider.lis_person_name_family
|
||||
"#{provider.lis_person_name_given} #{provider.lis_person_name_family}"
|
||||
else
|
||||
provider.lis_person_name_given || provider.lis_person_name_family
|
||||
provider.lis_person_name_given
|
||||
end
|
||||
end
|
||||
private :external_user_name
|
||||
|
@ -5,11 +5,9 @@ class ExternalUser < ActiveRecord::Base
|
||||
validates :external_id, presence: true
|
||||
|
||||
def displayname
|
||||
result = "User " + id.to_s
|
||||
if(!consumer.nil? && consumer.name == 'openHPI')
|
||||
result = Rails.cache.fetch("#{cache_key}/displayname", expires_in: 12.hours) do
|
||||
Xikolo::UserClient.get(external_id.to_s)[:display_name]
|
||||
end
|
||||
result = name
|
||||
if(result == nil || discount == "")
|
||||
result = "User " + id.to_s
|
||||
end
|
||||
result
|
||||
end
|
||||
|
Reference in New Issue
Block a user