diff options
author | Claire <claire.github-309c@sitedethib.com> | 2022-01-19 14:22:59 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-01-19 14:22:59 +0100 |
commit | b209e919bddb4bb72bb4f8589f4b15654f22ef53 (patch) | |
tree | ccd980d2d701c03f9c16358908f20560f2d5be2c /app/models/form | |
parent | f6acc039ec95c6d1c8cc2e2955f2af31d27e928c (diff) | |
parent | c42938aed4677f52207bbb6389c7edc2772a6f7a (diff) |
Merge pull request #1662 from ClearlyClaire/glitch-soc/merge-upstream
Merge upstream changes
Diffstat (limited to 'app/models/form')
-rw-r--r-- | app/models/form/status_batch.rb | 45 |
1 files changed, 0 insertions, 45 deletions
diff --git a/app/models/form/status_batch.rb b/app/models/form/status_batch.rb deleted file mode 100644 index c4943a7ea..000000000 --- a/app/models/form/status_batch.rb +++ /dev/null @@ -1,45 +0,0 @@ -# frozen_string_literal: true - -class Form::StatusBatch - include ActiveModel::Model - include AccountableConcern - - attr_accessor :status_ids, :action, :current_account - - def save - case action - when 'nsfw_on', 'nsfw_off' - change_sensitive(action == 'nsfw_on') - when 'delete' - delete_statuses - end - end - - private - - def change_sensitive(sensitive) - media_attached_status_ids = MediaAttachment.where(status_id: status_ids).pluck(:status_id) - - ApplicationRecord.transaction do - Status.where(id: media_attached_status_ids).reorder(nil).find_each do |status| - status.update!(sensitive: sensitive) - log_action :update, status - end - end - - true - rescue ActiveRecord::RecordInvalid - false - end - - def delete_statuses - Status.where(id: status_ids).reorder(nil).find_each do |status| - status.discard - RemovalWorker.perform_async(status.id, immediate: true) - Tombstone.find_or_create_by(uri: status.uri, account: status.account, by_moderator: true) - log_action :destroy, status - end - - true - end -end |