20 lines
563 B
Ruby
20 lines
563 B
Ruby
class User < ApplicationRecord
|
|
has_many :server_templates, dependent: :destroy
|
|
has_many :overlays, dependent: :destroy
|
|
has_many :servers, dependent: :destroy
|
|
has_many :activities, dependent: :destroy
|
|
|
|
validates :steam_id, :steam_username, presence: true
|
|
validates :steam_id, uniqueness: true
|
|
|
|
def self.find_or_create_from_steam(auth_hash)
|
|
user = find_by(steam_id: auth_hash["uid"])
|
|
unless user
|
|
user = create!(
|
|
steam_id: auth_hash["uid"],
|
|
steam_username: auth_hash["info"]["nickname"]
|
|
)
|
|
end
|
|
user
|
|
end
|
|
end
|