Keep statuses bookmarked by local users in tootctl statuses remove (#12818)

This commit is contained in:
Gomasy 2020-01-11 14:41:37 +09:00 committed by Eugen Rochko
parent 5b9f01aec0
commit 3b08535463

View file

@ -48,6 +48,8 @@ module Mastodon
scope = scope.where('id NOT IN (SELECT statuses1.reblog_of_id FROM statuses AS statuses1 WHERE statuses.id = statuses1.reblog_of_id AND (statuses1.uri IS NULL OR statuses1.local OR statuses1.id >= ?))', max_id) scope = scope.where('id NOT IN (SELECT statuses1.reblog_of_id FROM statuses AS statuses1 WHERE statuses.id = statuses1.reblog_of_id AND (statuses1.uri IS NULL OR statuses1.local OR statuses1.id >= ?))', max_id)
# Skip statuses favourited by local users # Skip statuses favourited by local users
scope = scope.where('id NOT IN (SELECT favourites.status_id FROM favourites WHERE statuses.id = favourites.status_id AND favourites.account_id IN (SELECT accounts.id FROM accounts WHERE domain IS NULL))') scope = scope.where('id NOT IN (SELECT favourites.status_id FROM favourites WHERE statuses.id = favourites.status_id AND favourites.account_id IN (SELECT accounts.id FROM accounts WHERE domain IS NULL))')
# Skip statuses bookmarked by local users
scope = scope.where('id NOT IN (SELECT bookmarks.status_id FROM bookmarks WHERE statuses.id = bookmarks.status_id AND bookmarks.account_id IN (SELECT accounts.id FROM accounts WHERE domain IS NULL))')
unless options[:clean_followed] unless options[:clean_followed]
# Skip accounts followed by local accounts # Skip accounts followed by local accounts