about summary refs log tree commit diff
path: root/app/lib/activitypub
diff options
context:
space:
mode:
authorThibaut Girka <thib@sitedethib.com>2018-05-29 13:52:26 +0200
committerThibaut Girka <thib@sitedethib.com>2018-05-29 13:52:26 +0200
commitc087738270e7fb16b1d284e8dd72cf99b4238bb8 (patch)
tree23327fe190fd90589c9dc8d64e96fcf0b7d28ddd /app/lib/activitypub
parent8b98afa781018bc7cfdb325f6b1fca0b1edcd8cb (diff)
parent90908fc24ba57c877de75fe117b8cc234e29d4f0 (diff)
Merge branch 'master' into glitch-soc/merge-upstream
Diffstat (limited to 'app/lib/activitypub')
-rw-r--r--app/lib/activitypub/activity/create.rb7
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