diff options
author | Thibaut Girka <thib@sitedethib.com> | 2019-01-26 18:32:49 +0100 |
---|---|---|
committer | Thibaut Girka <thib@sitedethib.com> | 2019-01-26 18:32:49 +0100 |
commit | 80d954ec10b7e1e080af2ab5d1ea6b0b40675164 (patch) | |
tree | 21811e1d2e969ba90de2714de5abfc7aaf391ea1 /app/models | |
parent | 270bf7778d681453b259e54b5da55fb449365c8b (diff) | |
parent | 9519d55332a1f22891e5ad8a1de1d2ba027bafc7 (diff) |
Merge branch 'master' into glitch-soc/merge-upstream
Diffstat (limited to 'app/models')
-rw-r--r-- | app/models/concerns/omniauthable.rb | 1 | ||||
-rw-r--r-- | app/models/user.rb | 2 |
2 files changed, 3 insertions, 0 deletions
diff --git a/app/models/concerns/omniauthable.rb b/app/models/concerns/omniauthable.rb index f263fe7af..4dd2e9383 100644 --- a/app/models/concerns/omniauthable.rb +++ b/app/models/concerns/omniauthable.rb @@ -63,6 +63,7 @@ module Omniauthable { email: email || "#{TEMP_EMAIL_PREFIX}-#{auth.uid}-#{auth.provider}.com", password: Devise.friendly_token[0, 20], + agreement: true, account_attributes: { username: ensure_unique_username(auth.uid), display_name: display_name, diff --git a/app/models/user.rb b/app/models/user.rb index 0425c1772..fbb6545db 100644 --- a/app/models/user.rb +++ b/app/models/user.rb @@ -295,6 +295,7 @@ class User < ApplicationRecord def self.pam_get_user(attributes = {}) return nil unless attributes[:email] + resource = if Devise.check_at_sign && !attributes[:email].index('@') joins(:account).find_by(accounts: { username: attributes[:email] }) @@ -304,6 +305,7 @@ class User < ApplicationRecord if resource.blank? resource = new(email: attributes[:email], agreement: true) + if Devise.check_at_sign && !resource[:email].index('@') resource[:email] = Rpam2.getenv(resource.find_pam_service, attributes[:email], attributes[:password], 'email', false) resource[:email] = "#{attributes[:email]}@#{resource.find_pam_suffix}" unless resource[:email] |