diff --git a/app/models/discourse_single_sign_on.rb b/app/models/discourse_single_sign_on.rb index b4582172cbd..4db846f93b6 100644 --- a/app/models/discourse_single_sign_on.rb +++ b/app/models/discourse_single_sign_on.rb @@ -88,7 +88,7 @@ class DiscourseSingleSignOn < SingleSignOn user_params = { email: email, - name: User.suggest_name(try_name || try_username || email), + name: try_name || User.suggest_name(try_username || email), username: UserNameSuggester.suggest(try_username || try_name || email), ip_address: ip_address } @@ -120,7 +120,7 @@ class DiscourseSingleSignOn < SingleSignOn end if SiteSetting.sso_overrides_name && user.name != name - user.name = User.suggest_name(name || username || email) + user.name = name || User.suggest_name(username || email) end if SiteSetting.sso_overrides_avatar && avatar_url.present? && ( diff --git a/spec/models/discourse_single_sign_on_spec.rb b/spec/models/discourse_single_sign_on_spec.rb index 62a10d0ae5a..d102e291cc3 100644 --- a/spec/models/discourse_single_sign_on_spec.rb +++ b/spec/models/discourse_single_sign_on_spec.rb @@ -85,12 +85,15 @@ describe DiscourseSingleSignOn do sso.email = "TEST@bob.com" + sso.name = "Louis C.K." + sso.lookup_or_create_user(ip_address) admin.reload expect(admin.email).to eq("test@bob.com") expect(admin.username).to eq "bob_the_admin" + expect(admin.name).to eq "Louis C.K." end it "can fill in data on way back" do