From 50d6de9c286abcb34ff4234d56d9cbb803db7665 Mon Sep 17 00:00:00 2001 From: Chocobozzz Date: Thu, 14 Dec 2017 17:38:41 +0100 Subject: Begin moving video channel to actor --- server/models/video/video-channel-share.ts | 96 ------------------------------ 1 file changed, 96 deletions(-) delete mode 100644 server/models/video/video-channel-share.ts (limited to 'server/models/video/video-channel-share.ts') diff --git a/server/models/video/video-channel-share.ts b/server/models/video/video-channel-share.ts deleted file mode 100644 index f5b7a7cd5..000000000 --- a/server/models/video/video-channel-share.ts +++ /dev/null @@ -1,96 +0,0 @@ -import * as Sequelize from 'sequelize' -import { BelongsTo, Column, CreatedAt, ForeignKey, Model, Scopes, Table, UpdatedAt } from 'sequelize-typescript' -import { AccountModel } from '../account/account' -import { VideoChannelModel } from './video-channel' - -enum ScopeNames { - FULL = 'FULL', - WITH_ACCOUNT = 'WITH_ACCOUNT' -} - -@Scopes({ - [ScopeNames.FULL]: { - include: [ - { - model: () => AccountModel, - required: true - }, - { - model: () => VideoChannelModel, - required: true - } - ] - }, - [ScopeNames.WITH_ACCOUNT]: { - include: [ - { - model: () => AccountModel, - required: true - } - ] - } -}) -@Table({ - tableName: 'videoChannelShare', - indexes: [ - { - fields: [ 'accountId' ] - }, - { - fields: [ 'videoChannelId' ] - } - ] -}) -export class VideoChannelShareModel extends Model { - @CreatedAt - createdAt: Date - - @UpdatedAt - updatedAt: Date - - @ForeignKey(() => AccountModel) - @Column - accountId: number - - @BelongsTo(() => AccountModel, { - foreignKey: { - allowNull: false - }, - onDelete: 'cascade' - }) - Account: AccountModel - - @ForeignKey(() => VideoChannelModel) - @Column - videoChannelId: number - - @BelongsTo(() => VideoChannelModel, { - foreignKey: { - allowNull: false - }, - onDelete: 'cascade' - }) - VideoChannel: VideoChannelModel - - static load (accountId: number, videoChannelId: number, t: Sequelize.Transaction) { - return VideoChannelShareModel.scope(ScopeNames.FULL).findOne({ - where: { - accountId, - videoChannelId - }, - transaction: t - }) - } - - static loadAccountsByShare (videoChannelId: number, t: Sequelize.Transaction) { - const query = { - where: { - videoChannelId - }, - transaction: t - } - - return VideoChannelShareModel.scope(ScopeNames.WITH_ACCOUNT).findAll(query) - .then(res => res.map(r => r.Account)) - } -} -- cgit v1.2.3