mirror of
https://github.com/discourse/discourse.git
synced 2024-12-15 01:33:43 +08:00
36 lines
930 B
Ruby
36 lines
930 B
Ruby
|
class Auth::Result
|
||
|
attr_accessor :user, :name, :username, :email, :user,
|
||
|
:email_valid, :extra_data, :awaiting_activation,
|
||
|
:awaiting_approval, :authenticated, :authenticator_name
|
||
|
|
||
|
def session_data
|
||
|
{
|
||
|
email: email,
|
||
|
username: username,
|
||
|
email_valid: email_valid,
|
||
|
name: name,
|
||
|
authenticator_name: authenticator_name,
|
||
|
extra_data: extra_data
|
||
|
}
|
||
|
end
|
||
|
|
||
|
def to_client_hash
|
||
|
if user
|
||
|
{
|
||
|
authenticated: !!authenticated,
|
||
|
awaiting_activation: !!awaiting_activation,
|
||
|
awaiting_approval: !!awaiting_approval
|
||
|
}
|
||
|
else
|
||
|
{
|
||
|
email: email,
|
||
|
name: User.suggest_name(name || username || email),
|
||
|
username: UserNameSuggester.suggest(username || name || email),
|
||
|
# this feels a tad wrong
|
||
|
auth_provider: authenticator_name.capitalize,
|
||
|
email_valid: !!email_valid
|
||
|
}
|
||
|
end
|
||
|
end
|
||
|
end
|