X-Git-Url: https://git.immae.eu/?a=blobdiff_plain;f=server%2Fcontrollers%2Factivitypub%2Foutbox.ts;h=5a2d43f3dd8b803dba2d6efe11ad66768d4b17c6;hb=98ec8b8e73a918d5680e6f13aaef56ca8756c2a8;hp=74d3997631a7e0d63b5f9b1ca90c3b459f40b519;hpb=c46edbc2f6ca310b2f0331f979ac6caf27f6eb92;p=github%2FChocobozzz%2FPeerTube.git diff --git a/server/controllers/activitypub/outbox.ts b/server/controllers/activitypub/outbox.ts index 74d399763..5a2d43f3d 100644 --- a/server/controllers/activitypub/outbox.ts +++ b/server/controllers/activitypub/outbox.ts @@ -1,14 +1,14 @@ import * as express from 'express' -import { Activity, ActivityAdd } from '../../../shared/models/activitypub/activity' -import { activityPubCollectionPagination, activityPubContextify } from '../../helpers/activitypub' +import { Activity } from '../../../shared/models/activitypub/activity' +import { activityPubCollectionPagination } from '../../helpers/activitypub' +import { pageToStartAndCount } from '../../helpers/core-utils' import { database as db } from '../../initializers' +import { ACTIVITY_PUB } from '../../initializers/constants' import { addActivityData } from '../../lib/activitypub/send/send-add' import { getAnnounceActivityPubUrl } from '../../lib/activitypub/url' import { announceActivityData } from '../../lib/index' import { asyncMiddleware, localAccountValidator } from '../../middlewares' import { AccountInstance } from '../../models/account/account-interface' -import { pageToStartAndCount } from '../../helpers/core-utils' -import { ACTIVITY_PUB } from '../../initializers/constants' const outboxRouter = express.Router() @@ -36,14 +36,19 @@ async function outboxController (req: express.Request, res: express.Response, ne for (const video of data.data) { const videoObject = video.toActivityPubObject() - let addActivity: ActivityAdd = await addActivityData(video.url, account, video, video.VideoChannel.url, videoObject) // This is a shared video - if (video.VideoShare !== undefined) { + const videoChannel = video.VideoChannel + if (video.VideoShares !== undefined && video.VideoShares.length !== 0) { + const addActivity = await addActivityData(video.url, videoChannel.Account, video, videoChannel.url, videoObject, undefined) + const url = getAnnounceActivityPubUrl(video.url, account) - const announceActivity = await announceActivityData(url, account, addActivity) + const announceActivity = await announceActivityData(url, account, addActivity, undefined) + activities.push(announceActivity) } else { + const addActivity = await addActivityData(video.url, account, video, videoChannel.url, videoObject, undefined) + activities.push(addActivity) } }