diff options
author | pluralcafe-docker <docker@plural.cafe> | 2018-08-23 06:16:14 +0000 |
---|---|---|
committer | pluralcafe-docker <docker@plural.cafe> | 2018-08-23 06:16:14 +0000 |
commit | 0fa521de89168ef33423fc7306a33d4a1c3badf3 (patch) | |
tree | ce3663d75ca93ea2d32e10de532eb18a230cf6e0 /app/models | |
parent | a4935a8e24dcfa865fb330693d8ec90beca1aa98 (diff) | |
parent | 8aa58e34bb2b62192a997ac7ea8919b22fc45f80 (diff) |
Merge branch 'glitch'
Diffstat (limited to 'app/models')
-rw-r--r-- | app/models/account.rb | 7 | ||||
-rw-r--r-- | app/models/form/admin_suspension_confirmation.rb | 7 | ||||
-rw-r--r-- | app/models/status.rb | 3 |
3 files changed, 16 insertions, 1 deletions
diff --git a/app/models/account.rb b/app/models/account.rb index 9daf063a5..c84a7406d 100644 --- a/app/models/account.rb +++ b/app/models/account.rb @@ -196,6 +196,13 @@ class Account < ApplicationRecord ResolveAccountService.new.call(acct) end + def suspend! + transaction do + user&.disable! if local? + update!(suspended: true) + end + end + def unsuspend! transaction do user&.enable! if local? diff --git a/app/models/form/admin_suspension_confirmation.rb b/app/models/form/admin_suspension_confirmation.rb new file mode 100644 index 000000000..c34b5b30e --- /dev/null +++ b/app/models/form/admin_suspension_confirmation.rb @@ -0,0 +1,7 @@ +# frozen_string_literal: true + +class Form::AdminSuspensionConfirmation + include ActiveModel::Model + + attr_accessor :acct, :report_id +end diff --git a/app/models/status.rb b/app/models/status.rb index f38227b85..f9c0c68d9 100644 --- a/app/models/status.rb +++ b/app/models/status.rb @@ -395,7 +395,8 @@ class Status < ApplicationRecord def account_silencing_filter(account) if account.silenced? - including_silenced_accounts + including_myself = left_outer_joins(:account).where(account_id: account.id).references(:accounts) + excluding_silenced_accounts.or(including_myself) else excluding_silenced_accounts end |