mirror of https://github.com/mastodon/mastodon
Add block.created webhook
This commit is contained in:
parent
6c48024a87
commit
fd63bc10f4
|
@ -23,6 +23,12 @@ class Webhook < ApplicationRecord
|
|||
report.updated
|
||||
status.created
|
||||
status.updated
|
||||
block.created
|
||||
block.removed
|
||||
follow.created
|
||||
follow.removed
|
||||
mute.created
|
||||
mute.removed
|
||||
).freeze
|
||||
|
||||
attr_writer :current_account
|
||||
|
@ -62,7 +68,7 @@ class Webhook < ApplicationRecord
|
|||
:manage_users
|
||||
when 'report.created', 'report.updated'
|
||||
:manage_reports
|
||||
when 'status.created', 'status.updated'
|
||||
when 'status.created', 'status.updated', 'block.created', 'block.removed', 'follow.created', 'follow.removed', 'mute.created', 'mute.removed' # TODO: find the correct permission
|
||||
:view_devops
|
||||
end
|
||||
end
|
||||
|
|
|
@ -12,6 +12,8 @@ class BlockService < BaseService
|
|||
|
||||
block = account.block!(target_account)
|
||||
|
||||
trigger_webhooks block.id
|
||||
|
||||
BlockWorker.perform_async(account.id, target_account.id)
|
||||
create_notification(block) if !target_account.local? && target_account.activitypub?
|
||||
block
|
||||
|
@ -26,4 +28,8 @@ class BlockService < BaseService
|
|||
def build_json(block)
|
||||
Oj.dump(serialize_payload(block, ActivityPub::BlockSerializer))
|
||||
end
|
||||
|
||||
def trigger_webhooks(block_id)
|
||||
TriggerWebhookWorker.perform_async('block.created', 'Block', block_id)
|
||||
end
|
||||
end
|
||||
|
|
Loading…
Reference in New Issue