summaryrefslogtreecommitdiff
path: root/app/models
diff options
context:
space:
mode:
Diffstat (limited to 'app/models')
-rw-r--r--app/models/user.rb14
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