diff options
author | Chocobozzz <me@florianbigard.com> | 2018-01-04 11:19:16 +0100 |
---|---|---|
committer | Chocobozzz <me@florianbigard.com> | 2018-01-04 11:19:16 +0100 |
commit | 4cb6d4578893db310297d7e118ce2fb7ecb952a3 (patch) | |
tree | a89a2e2062ba7bb91e922f07a7950ee51e090ccf /server/lib/activitypub/send | |
parent | cf117aaafc1e9ae1ab4c388fc5d2e5ba9349efee (diff) | |
download | PeerTube-4cb6d4578893db310297d7e118ce2fb7ecb952a3.tar.gz PeerTube-4cb6d4578893db310297d7e118ce2fb7ecb952a3.tar.zst PeerTube-4cb6d4578893db310297d7e118ce2fb7ecb952a3.zip |
Add ability to delete comments
Diffstat (limited to 'server/lib/activitypub/send')
-rw-r--r-- | server/lib/activitypub/send/send-delete.ts | 16 |
1 files changed, 15 insertions, 1 deletions
diff --git a/server/lib/activitypub/send/send-delete.ts b/server/lib/activitypub/send/send-delete.ts index 4bc5db77e..1ca031898 100644 --- a/server/lib/activitypub/send/send-delete.ts +++ b/server/lib/activitypub/send/send-delete.ts | |||
@@ -2,6 +2,7 @@ import { Transaction } from 'sequelize' | |||
2 | import { ActivityDelete } from '../../../../shared/models/activitypub' | 2 | import { ActivityDelete } from '../../../../shared/models/activitypub' |
3 | import { ActorModel } from '../../../models/activitypub/actor' | 3 | import { ActorModel } from '../../../models/activitypub/actor' |
4 | import { VideoModel } from '../../../models/video/video' | 4 | import { VideoModel } from '../../../models/video/video' |
5 | import { VideoCommentModel } from '../../../models/video/video-comment' | ||
5 | import { VideoShareModel } from '../../../models/video/video-share' | 6 | import { VideoShareModel } from '../../../models/video/video-share' |
6 | import { broadcastToFollowers } from './misc' | 7 | import { broadcastToFollowers } from './misc' |
7 | 8 | ||
@@ -22,11 +23,24 @@ async function sendDeleteActor (byActor: ActorModel, t: Transaction) { | |||
22 | return broadcastToFollowers(data, byActor, [ byActor ], t) | 23 | return broadcastToFollowers(data, byActor, [ byActor ], t) |
23 | } | 24 | } |
24 | 25 | ||
26 | async function sendDeleteVideoComment (videoComment: VideoCommentModel, t: Transaction) { | ||
27 | const byActor = videoComment.Account.Actor | ||
28 | |||
29 | const data = deleteActivityData(videoComment.url, byActor) | ||
30 | |||
31 | const actorsInvolved = await VideoShareModel.loadActorsByShare(videoComment.Video.id, t) | ||
32 | actorsInvolved.push(videoComment.Video.VideoChannel.Account.Actor) | ||
33 | actorsInvolved.push(byActor) | ||
34 | |||
35 | return broadcastToFollowers(data, byActor, actorsInvolved, t) | ||
36 | } | ||
37 | |||
25 | // --------------------------------------------------------------------------- | 38 | // --------------------------------------------------------------------------- |
26 | 39 | ||
27 | export { | 40 | export { |
28 | sendDeleteVideo, | 41 | sendDeleteVideo, |
29 | sendDeleteActor | 42 | sendDeleteActor, |
43 | sendDeleteVideoComment | ||
30 | } | 44 | } |
31 | 45 | ||
32 | // --------------------------------------------------------------------------- | 46 | // --------------------------------------------------------------------------- |