end
def mute
- MuteService.new.call(current_user.account, @account, notifications: params[:notifications])
+ MuteService.new.call(current_user.account, @account, **params.permit(:notifications).to_hash.symbolize_keys)
render json: @account, serializer: REST::RelationshipSerializer, relationships: relationships
end
# frozen_string_literal: true
class MuteService < BaseService
- def call(account, target_account, notifications: nil)
+ def call(account, target_account, **opts)
return if account.id == target_account.id
FeedManager.instance.clear_from_timeline(account, target_account)
- # This unwieldy approach avoids duplicating the default value here
- # and in mute!.
- opts = {}
- opts[:notifications] = notifications unless notifications.nil?
- account.mute!(target_account, **opts)
+ account.mute!(target_account, **opts.slice(:notifications))
end
end