aboutsummaryrefslogtreecommitdiffhomepage
path: root/server/models
diff options
context:
space:
mode:
authorChocobozzz <me@florianbigard.com>2019-01-15 09:45:54 +0100
committerChocobozzz <me@florianbigard.com>2019-01-15 09:45:54 +0100
commit44b9c0ba31c4a97e3d874f33226ad935c3a90dd5 (patch)
treecb0b5e55ed3f8bafa439f233f43aca5c71a44515 /server/models
parent3195cd1c118f5e020ab7e635d5a3dcdad2108b1a (diff)
downloadPeerTube-44b9c0ba31c4a97e3d874f33226ad935c3a90dd5.tar.gz
PeerTube-44b9c0ba31c4a97e3d874f33226ad935c3a90dd5.tar.zst
PeerTube-44b9c0ba31c4a97e3d874f33226ad935c3a90dd5.zip
Add totalLocalVideoFilesSize in stats
Diffstat (limited to 'server/models')
-rw-r--r--server/models/redundancy/video-redundancy.ts2
-rw-r--r--server/models/video/video-file.ts20
2 files changed, 21 insertions, 1 deletions
diff --git a/server/models/redundancy/video-redundancy.ts b/server/models/redundancy/video-redundancy.ts
index 8b6cd146a..8f2ef2d9a 100644
--- a/server/models/redundancy/video-redundancy.ts
+++ b/server/models/redundancy/video-redundancy.ts
@@ -395,7 +395,7 @@ export class VideoRedundancyModel extends Model<VideoRedundancyModel> {
395 ] 395 ]
396 } 396 }
397 397
398 return VideoRedundancyModel.find(query as any) // FIXME: typings 398 return VideoRedundancyModel.findOne(query as any) // FIXME: typings
399 .then((r: any) => ({ 399 .then((r: any) => ({
400 totalUsed: parseInt(r.totalUsed.toString(), 10), 400 totalUsed: parseInt(r.totalUsed.toString(), 10),
401 totalVideos: r.totalVideos, 401 totalVideos: r.totalVideos,
diff --git a/server/models/video/video-file.ts b/server/models/video/video-file.ts
index 0fd868cd6..1f1b76c1e 100644
--- a/server/models/video/video-file.ts
+++ b/server/models/video/video-file.ts
@@ -120,6 +120,26 @@ export class VideoFileModel extends Model<VideoFileModel> {
120 return VideoFileModel.findById(id, options) 120 return VideoFileModel.findById(id, options)
121 } 121 }
122 122
123 static async getStats () {
124 let totalLocalVideoFilesSize = await VideoFileModel.sum('size', {
125 include: [
126 {
127 attributes: [],
128 model: VideoModel.unscoped(),
129 where: {
130 remote: false
131 }
132 }
133 ]
134 } as any)
135 // Sequelize could return null...
136 if (!totalLocalVideoFilesSize) totalLocalVideoFilesSize = 0
137
138 return {
139 totalLocalVideoFilesSize
140 }
141 }
142
123 hasSameUniqueKeysThan (other: VideoFileModel) { 143 hasSameUniqueKeysThan (other: VideoFileModel) {
124 return this.fps === other.fps && 144 return this.fps === other.fps &&
125 this.resolution === other.resolution && 145 this.resolution === other.resolution &&