diff options
Diffstat (limited to 'app/services/remove_status_service.rb')
-rw-r--r-- | app/services/remove_status_service.rb | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/app/services/remove_status_service.rb b/app/services/remove_status_service.rb index 747f209f3..6e4998e07 100644 --- a/app/services/remove_status_service.rb +++ b/app/services/remove_status_service.rb @@ -24,6 +24,7 @@ class RemoveStatusService < BaseService remove_from_hashtags remove_from_public remove_from_media if status.media_attachments.any? + remove_from_direct if status.direct_visibility? @status.destroy! else @@ -163,6 +164,13 @@ class RemoveStatusService < BaseService redis.publish('timeline:public:local:media', @payload) if @status.local? end + def remove_from_direct + @mentions.each do |mention| + Redis.current.publish("timeline:direct:#{mention.account.id}", @payload) if mention.account.local? + end + Redis.current.publish("timeline:direct:#{@account.id}", @payload) if @account.local? + end + def lock_options { redis: Redis.current, key: "distribute:#{@status.id}" } end |