about summary refs log tree commit diff
path: root/app/services/mute_service.rb
blob: c6122a152c0bf2c8e65e6005b60e9a1f3d59c760 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
# frozen_string_literal: true

class MuteService < BaseService
  def call(account, target_account, notifications: nil)
    return if account.id == target_account.id

    mute = account.mute!(target_account, notifications: notifications)
    if mute.hide_notifications?
      BlockWorker.perform_async(account.id, target_account.id)
    else
      FeedManager.instance.clear_from_timeline(account, target_account)
    end
    mute
  end
end