Filter languages with opt out (#3175)
* Remove allowed_languages and add filtered_languages * Use filtered_languages instead of allowed_languages
This commit is contained in:
parent
2e112e2406
commit
8f4b7c1820
21 changed files with 30 additions and 41 deletions
|
@ -99,7 +99,7 @@ class Account < ApplicationRecord
|
|||
prefix: true,
|
||||
allow_nil: true
|
||||
|
||||
delegate :allowed_languages, to: :user, prefix: false, allow_nil: true
|
||||
delegate :filtered_languages, to: :user, prefix: false, allow_nil: true
|
||||
|
||||
def local?
|
||||
domain.nil?
|
||||
|
|
|
@ -142,8 +142,8 @@ class Status < ApplicationRecord
|
|||
before_validation :set_conversation
|
||||
|
||||
class << self
|
||||
def in_allowed_languages(account)
|
||||
where(language: account.allowed_languages)
|
||||
def not_in_filtered_languages(account)
|
||||
where.not(language: account.filtered_languages)
|
||||
end
|
||||
|
||||
def as_home_timeline(account)
|
||||
|
@ -234,7 +234,7 @@ class Status < ApplicationRecord
|
|||
def filter_timeline_for_account(query, account, local_only)
|
||||
query = query.not_excluded_by_account(account)
|
||||
query = query.not_domain_blocked_by_account(account) unless local_only
|
||||
query = query.in_allowed_languages(account) if account.allowed_languages.present?
|
||||
query = query.not_in_filtered_languages(account) if account.filtered_languages.present?
|
||||
query.merge(account_silencing_filter(account))
|
||||
end
|
||||
|
||||
|
|
|
@ -30,7 +30,7 @@
|
|||
# otp_required_for_login :boolean
|
||||
# last_emailed_at :datetime
|
||||
# otp_backup_codes :string is an Array
|
||||
# allowed_languages :string default([]), not null, is an Array
|
||||
# filtered_languages :string default([]), not null, is an Array
|
||||
#
|
||||
|
||||
class User < ApplicationRecord
|
||||
|
@ -83,6 +83,6 @@ class User < ApplicationRecord
|
|||
private
|
||||
|
||||
def sanitize_languages
|
||||
allowed_languages.reject!(&:blank?)
|
||||
filtered_languages.reject!(&:blank?)
|
||||
end
|
||||
end
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue