24 lines
638 B
Ruby

class User < ActiveRecord::Base
enum role: [:user, :vip, :admin]
after_initialize :set_default_role, if: :new_record?
validates :email, presence: true, uniqueness: true
validates :soft_token, presence: true, uniqueness: true
def set_default_role
self.role ||= :user
end
def soft_user?
self.email.empty?
end
def signed_in?
!soft_user?
end
# Include default devise modules. Others available are:
# :confirmable, :lockable, :timeoutable and :omniauthable
devise :invitable, :database_authenticatable, :registerable, # :confirmable,
:recoverable, :rememberable, :trackable, :validatable
end