aboutsummaryrefslogtreecommitdiffhomepage
path: root/server/helpers/video.ts
diff options
context:
space:
mode:
authorChocobozzz <me@florianbigard.com>2018-09-19 11:16:23 +0200
committerChocobozzz <me@florianbigard.com>2018-09-19 11:16:23 +0200
commit4157cdb13748cb6e8ce7081d062a8778554cc5a7 (patch)
tree149ee35079c1f81f1294f88aa0122dd5c4d55b22 /server/helpers/video.ts
parent96f29c0f6d2e623fb088e88200934c5df8da9924 (diff)
downloadPeerTube-4157cdb13748cb6e8ce7081d062a8778554cc5a7.tar.gz
PeerTube-4157cdb13748cb6e8ce7081d062a8778554cc5a7.tar.zst
PeerTube-4157cdb13748cb6e8ce7081d062a8778554cc5a7.zip
Refractor videos AP functions
Diffstat (limited to 'server/helpers/video.ts')
-rw-r--r--server/helpers/video.ts25
1 files changed, 25 insertions, 0 deletions
diff --git a/server/helpers/video.ts b/server/helpers/video.ts
new file mode 100644
index 000000000..b1577a6b0
--- /dev/null
+++ b/server/helpers/video.ts
@@ -0,0 +1,25 @@
1import { VideoModel } from '../models/video/video'
2
3type VideoFetchType = 'all' | 'only-video' | 'id' | 'none'
4
5function fetchVideo (id: number | string, fetchType: VideoFetchType) {
6 if (fetchType === 'all') return VideoModel.loadAndPopulateAccountAndServerAndTags(id)
7
8 if (fetchType === 'only-video') return VideoModel.load(id)
9
10 if (fetchType === 'id' || fetchType === 'none') return VideoModel.loadOnlyId(id)
11}
12
13type VideoFetchByUrlType = 'all' | 'only-video'
14function fetchVideoByUrl (url: string, fetchType: VideoFetchByUrlType) {
15 if (fetchType === 'all') return VideoModel.loadByUrlAndPopulateAccount(url)
16
17 if (fetchType === 'only-video') return VideoModel.loadByUrl(url)
18}
19
20export {
21 VideoFetchType,
22 VideoFetchByUrlType,
23 fetchVideo,
24 fetchVideoByUrl
25}