diff options
author | Eugen Rochko <eugen@zeonfederated.com> | 2017-01-07 15:44:22 +0100 |
---|---|---|
committer | Eugen Rochko <eugen@zeonfederated.com> | 2017-01-07 15:44:22 +0100 |
commit | 5c7add21761fc6b7d3c0af0819865242ce381960 (patch) | |
tree | c6928e1b99ec8218f40d0fac12214b1ec0dd21aa /app/services | |
parent | 7ddec6e7c3a8bdfcc69d28a723caca61cdb2a17c (diff) |
Fix #147 - Unreblogging will leave original status in feeds
Diffstat (limited to 'app/services')
-rw-r--r-- | app/services/remove_status_service.rb | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/app/services/remove_status_service.rb b/app/services/remove_status_service.rb index 836b8fdc5..7aca24d12 100644 --- a/app/services/remove_status_service.rb +++ b/app/services/remove_status_service.rb @@ -53,7 +53,12 @@ class RemoveStatusService < BaseService end def unpush(type, receiver, status) - redis.zremrangebyscore(FeedManager.instance.key(type, receiver.id), status.id, status.id) + if status.reblog? + redis.zadd(FeedManager.instance.key(type, receiver.id), status.reblog_of_id, status.reblog_of_id) + else + redis.zremrangebyscore(FeedManager.instance.key(type, receiver.id), status.id, status.id) + end + FeedManager.instance.broadcast(receiver.id, type: 'delete', id: status.id) end |