about summary refs log tree commit diff
path: root/app/policies
diff options
context:
space:
mode:
authorThibG <thib@sitedethib.com>2019-03-14 22:11:56 +0100
committerGitHub <noreply@github.com>2019-03-14 22:11:56 +0100
commitc2fa0f7c40bcc4064e8baaa221665eadd391c001 (patch)
tree74a5e58f2c724746d2e929b9df0e5682f17a2637 /app/policies
parentfa75324059c7a146354470691888dc0e1de0342f (diff)
parent09ac5e7528ba3bfe90c20002f47c863d9afc6fcd (diff)
Merge pull request #960 from ThibG/glitch-soc/merge-upstream
Merge upstream changes
Diffstat (limited to 'app/policies')
-rw-r--r--app/policies/user_policy.rb10
1 files changed, 9 insertions, 1 deletions
diff --git a/app/policies/user_policy.rb b/app/policies/user_policy.rb
index 57af5c61c..d832bff75 100644
--- a/app/policies/user_policy.rb
+++ b/app/policies/user_policy.rb
@@ -21,6 +21,14 @@ class UserPolicy < ApplicationPolicy
     staff?
   end
 
+  def approve?
+    staff? && !record.approved?
+  end
+
+  def reject?
+    staff? && !record.approved?
+  end
+
   def disable?
     staff? && !record.admin?
   end
@@ -36,7 +44,7 @@ class UserPolicy < ApplicationPolicy
   private
 
   def promoteable?
-    !record.staff? || !record.admin?
+    record.approved? && (!record.staff? || !record.admin?)
   end
 
   def demoteable?