Class: Tokite::User

Inherits:
ApplicationRecord show all
Defined in:
app/models/tokite/user.rb

Class Method Summary collapse

Instance Method Summary collapse

Class Method Details

.create_group_user!(name) ⇒ Object



29
30
31
32
33
34
35
36
37
# File 'app/models/tokite/user.rb', line 29

def self.create_group_user!(name)
  uuid = SecureRandom.uuid.tr("-", "")
  create!(
    provider: "GROUP",
    uid: uuid,
    image_url: "",
    name: name
  )
end

.login!(auth) ⇒ Object



9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
# File 'app/models/tokite/user.rb', line 9

def self.login!(auth)
  user = find_or_initialize_by(
    provider: auth[:provider],
    uid: auth[:uid],
  )
  if user.persisted?
    user.secure_user_token.update!(token: auth[:credentials][:token])
  else
    user.assign_attributes(
      name: auth[:info][:name],
      image_url: auth[:info][:image],
    )
    user.build_secure_user_token(token: auth[:credentials][:token])
    transaction do
      user.save!
    end
  end
  user
end

Instance Method Details

#group_user?Boolean

Returns:

  • (Boolean)


39
40
41
# File 'app/models/tokite/user.rb', line 39

def group_user?
  provider == "GROUP"
end

#name_with_providerObject



43
44
45
# File 'app/models/tokite/user.rb', line 43

def name_with_provider
  "#{name} (#{provider})"
end