Files
astuto/app/models/user.rb
2019-09-23 15:52:00 +02:00

27 lines
659 B
Ruby

class User < ApplicationRecord
devise :database_authenticatable, :registerable,
:recoverable, :rememberable, :validatable
self.send(:devise, :confirmable) if Rails.application.email_confirmation?
has_many :comments
enum role: [:user, :moderator, :admin]
after_initialize :set_default_role, if: :new_record?
validates :full_name, presence: true, length: { in: 2..32 }
def set_default_role
self.role ||= :user
end
def gravatar_url
gravatar_id = Digest::MD5::hexdigest(email.downcase)
"https://secure.gravatar.com/avatar/#{gravatar_id}"
end
def power_user?
role == 'admin' || role == 'moderator'
end
end