]> git.immae.eu Git - github/Chocobozzz/PeerTube.git/blobdiff - server/helpers/custom-validators/activitypub/videos.ts
Use ISO 639 for languages
[github/Chocobozzz/PeerTube.git] / server / helpers / custom-validators / activitypub / videos.ts
index d8986b2a0a6e3ffc42795bb215dc246126080398..8ec7df49a4610273a6b68fd5e72f8aec77d78501 100644 (file)
@@ -49,9 +49,9 @@ function isVideoTorrentObjectValid (video: any) {
     isActivityPubVideoDurationValid(video.duration) &&
     isUUIDValid(video.uuid) &&
     setValidRemoteTags(video) &&
-    (!video.category || isRemoteIdentifierValid(video.category)) &&
-    (!video.licence || isRemoteIdentifierValid(video.licence)) &&
-    (!video.language || isRemoteIdentifierValid(video.language)) &&
+    (!video.category || isRemoteNumberIdentifierValid(video.category)) &&
+    (!video.licence || isRemoteNumberIdentifierValid(video.licence)) &&
+    (!video.language || isRemoteStringIdentifierValid(video.language)) &&
     isVideoViewsValid(video.views) &&
     isBooleanValid(video.sensitive) &&
     isBooleanValid(video.commentsEnabled) &&
@@ -72,6 +72,7 @@ export {
   isVideoTorrentCreateActivityValid,
   isVideoTorrentUpdateActivityValid,
   isVideoTorrentDeleteActivityValid,
+  isRemoteStringIdentifierValid,
   isVideoFlagValid,
   isVideoTorrentObjectValid
 }
@@ -89,10 +90,14 @@ function setValidRemoteTags (video: any) {
   return true
 }
 
-function isRemoteIdentifierValid (data: any) {
+function isRemoteNumberIdentifierValid (data: any) {
   return validator.isInt(data.identifier, { min: 0 })
 }
 
+function isRemoteStringIdentifierValid (data: any) {
+  return typeof data.identifier === 'string'
+}
+
 function isRemoteVideoContentValid (mediaType: string, content: string) {
   return mediaType === 'text/markdown' && isVideoTruncatedDescriptionValid(content)
 }