diff options
author | Eugen Rochko <eugen@zeonfederated.com> | 2018-05-28 05:21:04 +0200 |
---|---|---|
committer | Yamagishi Kazutoshi <ykzts@desire.sh> | 2018-05-28 12:21:04 +0900 |
commit | ab36e0ef72a52e5cc184d63cda0fe411c8b4086a (patch) | |
tree | e8313a08f8486e65e8759c611e376192fd25b2e3 /app/lib | |
parent | dfbadd68374ab5ddcaa75907261bd91da688fc6b (diff) |
Record trending tags from ActivityPub, too (#7647)
Diffstat (limited to 'app/lib')
-rw-r--r-- | app/lib/activitypub/activity/create.rb | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/app/lib/activitypub/activity/create.rb b/app/lib/activitypub/activity/create.rb index 010ed1bb5..869749f1e 100644 --- a/app/lib/activitypub/activity/create.rb +++ b/app/lib/activitypub/activity/create.rb @@ -78,9 +78,12 @@ class ActivityPub::Activity::Create < ActivityPub::Activity return if tag['name'].blank? hashtag = tag['name'].gsub(/\A#/, '').mb_chars.downcase - hashtag = Tag.where(name: hashtag).first_or_initialize(name: hashtag) + hashtag = Tag.where(name: hashtag).first_or_create(name: hashtag) - status.tags << hashtag unless status.tags.include?(hashtag) + return if status.tags.include?(hashtag) + + status.tags << hashtag + TrendingTags.record_use!(hashtag, status.account, status.created_at) rescue ActiveRecord::RecordInvalid nil end |