]>
Commit | Line | Data |
---|---|---|
9f10b292 | 1 | 'use strict' |
0b697522 | 2 | |
f0f5567b | 3 | const validator = require('validator') |
0b697522 | 4 | |
67100f1f C |
5 | const constants = require('../initializers/constants') |
6 | ||
f0f5567b | 7 | const customValidators = { |
9f10b292 C |
8 | eachIsRemoteVideosAddValid: eachIsRemoteVideosAddValid, |
9 | eachIsRemoteVideosRemoveValid: eachIsRemoteVideosRemoveValid, | |
10 | isArray: isArray | |
11 | } | |
0b697522 | 12 | |
9f10b292 C |
13 | function eachIsRemoteVideosAddValid (values) { |
14 | return values.every(function (val) { | |
15 | return validator.isLength(val.name, 1, 50) && | |
16 | validator.isLength(val.description, 1, 50) && | |
17 | validator.isLength(val.magnetUri, 10) && | |
3a8a8b51 | 18 | validator.isURL(val.podUrl) && |
bb10240e | 19 | !isNaN(val.duration) && |
67100f1f C |
20 | val.duration >= 0 && |
21 | val.duration < constants.MAXIMUM_VIDEO_DURATION && | |
bb10240e | 22 | validator.isDate(val.createdDate) |
9f10b292 C |
23 | }) |
24 | } | |
0b697522 | 25 | |
9f10b292 C |
26 | function eachIsRemoteVideosRemoveValid (values) { |
27 | return values.every(function (val) { | |
28 | return validator.isLength(val.magnetUri, 10) | |
29 | }) | |
30 | } | |
0b697522 | 31 | |
9f10b292 C |
32 | function isArray (value) { |
33 | return Array.isArray(value) | |
34 | } | |
0b697522 | 35 | |
9f10b292 | 36 | // --------------------------------------------------------------------------- |
c45f7f84 | 37 | |
9f10b292 | 38 | module.exports = customValidators |