diff options
Diffstat (limited to 'app')
-rw-r--r-- | app/models/user.rb | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/app/models/user.rb b/app/models/user.rb index 59d9ac3..bc09808 100644 --- a/app/models/user.rb +++ b/app/models/user.rb @@ -5,4 +5,18 @@ class User < ApplicationRecord :confirmable, :lockable has_many :characters belongs_to :active_character, class_name: "Character", optional: true + attribute :permission_level, :integer, default: 1 + enum permission_level: { + banned: 0, + player: 1, + helper: 2, + builder: 3, + admin: 4, + developer: 5, + owner: 6 + } + + def has_permission_or_higher?(permission_level) + User.permission_levels[self.permission_level] >= User.permission_levels[permission_level] + end end |