diff options
author | Thibaut Girka <thib@sitedethib.com> | 2019-09-13 18:13:43 +0200 |
---|---|---|
committer | Thibaut Girka <thib@sitedethib.com> | 2019-09-13 18:13:43 +0200 |
commit | 74c5b2bd08f844aac03ca6f9653bac4f4eea3a43 (patch) | |
tree | ef0f56bc549ae22b134c749decadbd69f783b7e4 /app/services/remove_status_service.rb | |
parent | c7f71b974f1a57cd93f86e5a678018d4aea8e728 (diff) | |
parent | 18331fefa2246facc818226043b1f9cc67cf6c1a (diff) |
Merge branch 'master' into glitch-soc/merge-upstream
Conflicts: - Gemfile - app/controllers/api/v1/search_controller.rb Conflict because we changed the number of default results to be configurable - app/lib/settings/scoped_settings.rb Addition of a new “noindex” site-wide setting, conflict due to our change of the two other site-wide settings (default flavour and skin instead of theme) - spec/controllers/application_controller_spec.rb Addition of a new “noindex” site-wide setting, conflict due to our change of the two other site-wide settings (default flavour and skin instead of theme)
Diffstat (limited to 'app/services/remove_status_service.rb')
-rw-r--r-- | app/services/remove_status_service.rb | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/app/services/remove_status_service.rb b/app/services/remove_status_service.rb index b2f712089..1ddce675c 100644 --- a/app/services/remove_status_service.rb +++ b/app/services/remove_status_service.rb @@ -8,7 +8,8 @@ class RemoveStatusService < BaseService # @param [Status] status # @param [Hash] options # @option [Boolean] :redraft - # @options [Boolean] :original_removed + # @option [Boolean] :immediate + # @option [Boolean] :original_removed def call(status, **options) @payload = Oj.dump(event: :delete, payload: status.id.to_s) @status = status @@ -32,7 +33,7 @@ class RemoveStatusService < BaseService remove_from_spam_check remove_media - @status.destroy! + @status.destroy! if @options[:immediate] || !@status.reported? else raise Mastodon::RaceConditionError end @@ -158,7 +159,7 @@ class RemoveStatusService < BaseService end def remove_media - return if @options[:redraft] + return if @options[:redraft] || (!@options[:immediate] && @status.reported?) @status.media_attachments.destroy_all end |