Fix featured tags for remote accounts not being kept up to date (#33372)
This commit is contained in:
parent
fa2625a0d9
commit
17695ace33
4 changed files with 145 additions and 24 deletions
|
@ -53,6 +53,7 @@ class ActivityPub::Activity::Create < ActivityPub::Activity
|
|||
ApplicationRecord.transaction do
|
||||
@status = Status.create!(@params)
|
||||
attach_tags(@status)
|
||||
attach_mentions(@status)
|
||||
end
|
||||
|
||||
resolve_thread(@status)
|
||||
|
@ -160,6 +161,15 @@ class ActivityPub::Activity::Create < ActivityPub::Activity
|
|||
# not a big deal
|
||||
Trends.tags.register(status)
|
||||
|
||||
# Update featured tags
|
||||
return if @tags.empty? || !status.distributable?
|
||||
|
||||
@account.featured_tags.where(tag_id: @tags.pluck(:id)).find_each do |featured_tag|
|
||||
featured_tag.increment(status.created_at)
|
||||
end
|
||||
end
|
||||
|
||||
def attach_mentions(status)
|
||||
@mentions.each do |mention|
|
||||
mention.status = status
|
||||
mention.save
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue