From 5c98d3bf078852043cbdd582c01e3dc4f4b5b79f Mon Sep 17 00:00:00 2001 From: Chocobozzz Date: Tue, 5 Sep 2017 22:09:16 +0200 Subject: Begin tests for user quota --- server/models/user/user.ts | 7 +++++-- server/models/video/author.ts | 8 ++++++++ 2 files changed, 13 insertions(+), 2 deletions(-) (limited to 'server/models') diff --git a/server/models/user/user.ts b/server/models/user/user.ts index 12a7547f5..9bf13ad24 100644 --- a/server/models/user/user.ts +++ b/server/models/user/user.ts @@ -244,7 +244,7 @@ loadByUsernameOrEmail = function (username: string, email: string) { function getOriginalVideoFileTotalFromUser (user: UserInstance) { const query = { attributes: [ - Sequelize.fn('COUNT', Sequelize.col('VideoFile.size'), 'totalVideoBytes') + Sequelize.fn('COUNT', Sequelize.col('User.Author.Video.VideoFile.size'), 'totalVideoBytes') ], where: { id: user.id @@ -252,12 +252,15 @@ function getOriginalVideoFileTotalFromUser (user: UserInstance) { include: [ { model: User['sequelize'].models.Author, + required: true, include: [ { model: User['sequelize'].models.Video, + required: true, include: [ { - model: User['sequelize'].models.VideoFile + model: User['sequelize'].models.VideoFile, + required: true } ] } diff --git a/server/models/video/author.ts b/server/models/video/author.ts index c30cc306d..fd0f44f6b 100644 --- a/server/models/video/author.ts +++ b/server/models/video/author.ts @@ -71,6 +71,14 @@ function associate (models) { }, onDelete: 'cascade' }) + + Author.hasMany(models.Video, { + foreignKey: { + name: 'authorId', + allowNull: false + }, + onDelete: 'cascade' + }) } findOrCreateAuthor = function (name: string, podId: number, userId: number, transaction: Sequelize.Transaction) { -- cgit v1.2.3