diff options
Diffstat (limited to 'app/policies')
-rw-r--r-- | app/policies/account_policy.rb | 4 | ||||
-rw-r--r-- | app/policies/status_policy.rb | 1 |
2 files changed, 5 insertions, 0 deletions
diff --git a/app/policies/account_policy.rb b/app/policies/account_policy.rb index 9c145979d..1b105e92a 100644 --- a/app/policies/account_policy.rb +++ b/app/policies/account_policy.rb @@ -17,6 +17,10 @@ class AccountPolicy < ApplicationPolicy staff? && !record.user&.staff? end + def destroy? + record.suspended? && record.deletion_request.present? && admin? + end + def unsuspend? staff? end diff --git a/app/policies/status_policy.rb b/app/policies/status_policy.rb index fa5c0dd9c..d0359580d 100644 --- a/app/policies/status_policy.rb +++ b/app/policies/status_policy.rb @@ -12,6 +12,7 @@ class StatusPolicy < ApplicationPolicy end def show? + return false if author.suspended? return false if local_only? && (current_account.nil? || !current_account.local?) if requires_mention? |