Merge branch 'master' into glitch-soc/merge-upstream

Conflicts:
- `app/models/public_feed.rb`:
  Upstream refactored a bit, glitch-soc had specific code for local-only
  statuses.
  Updated glitch-soc's specific code accordingly.
This commit is contained in:
Claire
2021-01-11 11:55:42 +01:00
44 changed files with 195 additions and 119 deletions

View File

@@ -387,15 +387,17 @@ class Account < ApplicationRecord
end
class Field < ActiveModelSerializers::Model
attributes :name, :value, :verified_at, :account, :errors
attributes :name, :value, :verified_at, :account
def initialize(account, attributes)
@account = account
@attributes = attributes
@name = attributes['name'].strip[0, string_limit]
@value = attributes['value'].strip[0, string_limit]
@verified_at = attributes['verified_at']&.to_datetime
@errors = {}
@original_field = attributes
string_limit = account.local? ? 255 : 2047
super(
account: account,
name: attributes['name'].strip[0, string_limit],
value: attributes['value'].strip[0, string_limit],
verified_at: attributes['verified_at']&.to_datetime,
)
end
def verified?
@@ -417,22 +419,12 @@ class Account < ApplicationRecord
end
def mark_verified!
@verified_at = Time.now.utc
@attributes['verified_at'] = @verified_at
self.verified_at = Time.now.utc
@original_field['verified_at'] = verified_at
end
def to_h
{ name: @name, value: @value, verified_at: @verified_at }
end
private
def string_limit
if account.local?
255
else
2047
end
{ name: name, value: value, verified_at: verified_at }
end
end
@@ -518,7 +510,7 @@ class Account < ApplicationRecord
def from_text(text)
return [] if text.blank?
text.scan(MENTION_RE).map { |match| match.first.split('@', 2) }.uniq.map do |(username, domain)|
text.scan(MENTION_RE).map { |match| match.first.split('@', 2) }.uniq.filter_map do |(username, domain)|
domain = begin
if TagManager.instance.local_domain?(domain)
nil
@@ -527,7 +519,7 @@ class Account < ApplicationRecord
end
end
EntityCache.instance.mention(username, domain)
end.compact
end
end
private