diff options
author | Eugen Rochko <eugen@zeonfederated.com> | 2019-10-09 07:11:23 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2019-10-09 07:11:23 +0200 |
commit | b5f7e12817356b9b1795ab0187fe08d07f13a485 (patch) | |
tree | 0c0a234d78a30dd47ba2e4975156cb650607f767 /app/models | |
parent | 354fdd317e9c495ed721013911bc5274d5e0e1f8 (diff) |
Remove auto-silence behaviour from spam check (#12117)
Fix #12113
Diffstat (limited to 'app/models')
-rw-r--r-- | app/models/account.rb | 2 | ||||
-rw-r--r-- | app/models/admin/account_action.rb | 12 |
2 files changed, 13 insertions, 1 deletions
diff --git a/app/models/account.rb b/app/models/account.rb index 2f43f337f..05936def3 100644 --- a/app/models/account.rb +++ b/app/models/account.rb @@ -198,7 +198,7 @@ class Account < ApplicationRecord end def unsilence! - update!(silenced_at: nil, trust_level: trust_level == TRUST_LEVELS[:untrusted] ? TRUST_LEVELS[:trusted] : trust_level) + update!(silenced_at: nil) end def suspended? diff --git a/app/models/admin/account_action.rb b/app/models/admin/account_action.rb index b30a82369..e9da003a3 100644 --- a/app/models/admin/account_action.rb +++ b/app/models/admin/account_action.rb @@ -62,6 +62,8 @@ class Admin::AccountAction def process_action! case type + when 'none' + handle_resolve! when 'disable' handle_disable! when 'silence' @@ -103,6 +105,16 @@ class Admin::AccountAction end end + def handle_resolve! + if with_report? && report.account_id == -99 && target_account.trust_level == Account::TRUST_LEVELS[:untrusted] + # This is an automated report and it is being dismissed, so it's + # a false positive, in which case update the account's trust level + # to prevent further spam checks + + target_account.update(trust_level: Account::TRUST_LEVELS[:trusted]) + end + end + def handle_disable! authorize(target_account.user, :disable?) log_action(:disable, target_account.user) |