1
0
Fork 0
dokkan-data-rails/app/models/user.rb

35 lines
614 B
Ruby
Raw Normal View History

2015-09-29 21:21:05 -04:00
class User < ActiveRecord::Base
2015-10-08 15:18:21 -04:00
rolify
after_create :set_admin, if: :first_user?
2015-10-08 15:18:21 -04:00
2015-09-29 21:21:05 -04:00
def self.create_with_omniauth(auth)
where(provider: auth[:provider], uid: auth[:uid]).first_or_create do |user|
user.provider = auth[:provider]
user.uid = auth[:uid]
user.nickname = auth[:info][:name]
user.email = auth[:info][:email]
end
end
2015-10-08 15:18:21 -04:00
def admin?
self.has_role?(:admin)
end
def moderator?
self.has_role?(:moderator)
end
def first_user?
User.unscoped do
User.count == 1
end
end
2015-10-08 15:18:21 -04:00
private
def set_admin
self.add_role :admin
end
2015-09-29 21:21:05 -04:00
end