Forward ActivityPub deletes to followers of rebloggers (#4706)
This commit is contained in:
		@@ -8,7 +8,24 @@ class ActivityPub::Activity::Delete < ActivityPub::Activity
 | 
			
		||||
    if status.nil?
 | 
			
		||||
      delete_later!(object_uri)
 | 
			
		||||
    else
 | 
			
		||||
      RemoveStatusService.new.call(status)
 | 
			
		||||
      forward_for_reblogs(status)
 | 
			
		||||
      delete_now!(status)
 | 
			
		||||
    end
 | 
			
		||||
  end
 | 
			
		||||
 | 
			
		||||
  private
 | 
			
		||||
 | 
			
		||||
  def forward_for_reblogs(status)
 | 
			
		||||
    ActivityPub::RawDistributionWorker.push_bulk(status.reblogs.includes(:account).references(:account).merge(Account.local).pluck(:account_id)) do |account|
 | 
			
		||||
      [payload, account.id]
 | 
			
		||||
    end
 | 
			
		||||
  end
 | 
			
		||||
 | 
			
		||||
  def delete_now!(status)
 | 
			
		||||
    RemoveStatusService.new.call(status)
 | 
			
		||||
  end
 | 
			
		||||
 | 
			
		||||
  def payload
 | 
			
		||||
    @payload ||= Oj.dump(@json)
 | 
			
		||||
  end
 | 
			
		||||
end
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user