X-Git-Url: https://git.immae.eu/?a=blobdiff_plain;f=server%2Flib%2Fvideo-channel.ts;h=9f7ed929738c56d7f915cb59d70279b5afd6debd;hb=bffbebbe6b33ce306e7ec1b6051f0e51521c0440;hp=97924aa9e7350bc01ece116d013c3d6ba5d961e6;hpb=3fd3ab2d34d512b160a5e6084d7609be7b4f4452;p=github%2FChocobozzz%2FPeerTube.git diff --git a/server/lib/video-channel.ts b/server/lib/video-channel.ts index 97924aa9e..9f7ed9297 100644 --- a/server/lib/video-channel.ts +++ b/server/lib/video-channel.ts @@ -1,26 +1,34 @@ import * as Sequelize from 'sequelize' +import * as uuidv4 from 'uuid/v4' import { VideoChannelCreate } from '../../shared/models' import { AccountModel } from '../models/account/account' import { VideoChannelModel } from '../models/video/video-channel' -import { getVideoChannelActivityPubUrl } from './activitypub' +import { buildActorInstance, getVideoChannelActivityPubUrl } from './activitypub' async function createVideoChannel (videoChannelInfo: VideoChannelCreate, account: AccountModel, t: Sequelize.Transaction) { + const uuid = uuidv4() + const url = getVideoChannelActivityPubUrl(uuid) + // We use the name as uuid + const actorInstance = buildActorInstance('Group', url, uuid, uuid) + + const actorInstanceCreated = await actorInstance.save({ transaction: t }) + const videoChannelData = { name: videoChannelInfo.name, description: videoChannelInfo.description, - remote: false, - accountId: account.id + support: videoChannelInfo.support, + accountId: account.id, + actorId: actorInstanceCreated.id } const videoChannel = VideoChannelModel.build(videoChannelData) - videoChannel.set('url', getVideoChannelActivityPubUrl(videoChannel)) const options = { transaction: t } - const videoChannelCreated = await videoChannel.save(options) - // Do not forget to add Account information to the created video channel + // Do not forget to add Account/Actor information to the created video channel videoChannelCreated.Account = account + videoChannelCreated.Actor = actorInstanceCreated // No need to seed this empty video channel to followers return videoChannelCreated