]> git.immae.eu Git - github/Chocobozzz/PeerTube.git/blobdiff - server/initializers/constants.ts
Fix join in video events
[github/Chocobozzz/PeerTube.git] / server / initializers / constants.ts
index e01b6a4d47f7fd1d6b1fed24f06ceab11feff1d2..71012f3a3d932ad9e407d323d4fbaee4b6ca6e96 100644 (file)
@@ -10,12 +10,13 @@ import {
   RequestEndpoint,
   RequestVideoEventType,
   RequestVideoQaduType,
+  RemoteVideoRequestType,
   JobState
 } from '../../shared/models'
 
 // ---------------------------------------------------------------------------
 
-const LAST_MIGRATION_VERSION = 70
+const LAST_MIGRATION_VERSION = 80
 
 // ---------------------------------------------------------------------------
 
@@ -32,9 +33,12 @@ const SEARCHABLE_COLUMNS = {
 
 // Sortable columns per schema
 const SORTABLE_COLUMNS = {
+  PODS: [ 'id', 'host', 'score', 'createdAt' ],
   USERS: [ 'id', 'username', 'createdAt' ],
   VIDEO_ABUSES: [ 'id', 'createdAt' ],
-  VIDEOS: [ 'name', 'duration', 'createdAt', 'views', 'likes' ]
+  VIDEO_CHANNELS: [ 'id', 'name', 'updatedAt', 'createdAt' ],
+  VIDEOS: [ 'name', 'duration', 'createdAt', 'views', 'likes' ],
+  BLACKLISTS: [ 'id', 'name', 'duration', 'views', 'likes', 'dislikes', 'uuid', 'createdAt' ]
 }
 
 const OAUTH_LIFETIME = {
@@ -84,7 +88,14 @@ const CONFIG = {
   },
   TRANSCODING: {
     ENABLED: config.get<boolean>('transcoding.enabled'),
-    THREADS: config.get<number>('transcoding.threads')
+    THREADS: config.get<number>('transcoding.threads'),
+    RESOLUTIONS: {
+      '240' : config.get<boolean>('transcoding.resolutions.240p'),
+      '360': config.get<boolean>('transcoding.resolutions.360p'),
+      '480': config.get<boolean>('transcoding.resolutions.480p'),
+      '720': config.get<boolean>('transcoding.resolutions.720p'),
+      '1080': config.get<boolean>('transcoding.resolutions.1080p')
+    }
   },
   CACHE: {
     PREVIEWS: {
@@ -106,6 +117,10 @@ const CONSTRAINTS_FIELDS = {
   VIDEO_ABUSES: {
     REASON: { min: 2, max: 300 } // Length
   },
+  VIDEO_CHANNELS: {
+    NAME: { min: 3, max: 50 }, // Length
+    DESCRIPTION: { min: 3, max: 250 } // Length
+  },
   VIDEOS: {
     NAME: { min: 3, max: 50 }, // Length
     DESCRIPTION: { min: 3, max: 250 }, // Length
@@ -143,7 +158,7 @@ const VIDEO_CATEGORIES = {
   9: 'Comedy',
   10: 'Entertainment',
   11: 'News',
-  12: 'Howto',
+  12: 'How To',
   13: 'Education',
   14: 'Activism',
   15: 'Science & Technology',
@@ -178,15 +193,7 @@ const VIDEO_LANGUAGES = {
   11: 'German',
   12: 'Korean',
   13: 'French',
-  14: 'Italien'
-}
-
-const VIDEO_FILE_RESOLUTIONS = {
-  0: 'original',
-  1: '360p',
-  2: '480p',
-  3: '720p',
-  4: '1080p'
+  14: 'Italian'
 }
 
 // ---------------------------------------------------------------------------
@@ -201,7 +208,7 @@ const FRIEND_SCORE = {
 
 // Number of points we add/remove from a friend after a successful/bad request
 const PODS_SCORE = {
-  MALUS: -10,
+  PENALTY: -10,
   BONUS: 10
 }
 
@@ -231,11 +238,20 @@ const REQUEST_ENDPOINTS: { [ id: string ]: RequestEndpoint } = {
   VIDEOS: 'videos'
 }
 
-const REQUEST_ENDPOINT_ACTIONS: { [ id: string ]: any } = {}
+const REQUEST_ENDPOINT_ACTIONS: {
+  [ id: string ]: {
+    [ id: string ]: RemoteVideoRequestType
+  }
+} = {}
 REQUEST_ENDPOINT_ACTIONS[REQUEST_ENDPOINTS.VIDEOS] = {
-  ADD: 'add',
-  UPDATE: 'update',
-  REMOVE: 'remove',
+  ADD_VIDEO: 'add-video',
+  UPDATE_VIDEO: 'update-video',
+  REMOVE_VIDEO: 'remove-video',
+  ADD_CHANNEL: 'add-channel',
+  UPDATE_CHANNEL: 'update-channel',
+  REMOVE_CHANNEL: 'remove-channel',
+  ADD_AUTHOR: 'add-author',
+  REMOVE_AUTHOR: 'remove-author',
   REPORT_ABUSE: 'report-abuse'
 }
 
@@ -295,8 +311,19 @@ const STATIC_PATHS = {
 let STATIC_MAX_AGE = '30d'
 
 // Videos thumbnail size
-const THUMBNAILS_SIZE = '200x110'
-const PREVIEWS_SIZE = '640x480'
+const THUMBNAILS_SIZE = {
+  width: 200,
+  height: 110
+}
+const PREVIEWS_SIZE = {
+  width: 560,
+  height: 315
+}
+
+const EMBED_SIZE = {
+  width: 560,
+  height: 315
+}
 
 // Sub folders of cache directory
 const CACHE = {
@@ -314,7 +341,7 @@ const USER_ROLES: { [ id: string ]: UserRole } = {
 
 // ---------------------------------------------------------------------------
 
-const OPENGRAPH_COMMENT = '<!-- open graph tags -->'
+const OPENGRAPH_AND_OEMBED_COMMENT = '<!-- open graph and oembed tags -->'
 
 // ---------------------------------------------------------------------------
 
@@ -337,6 +364,7 @@ export {
   CACHE,
   CONFIG,
   CONSTRAINTS_FIELDS,
+  EMBED_SIZE,
   FRIEND_SCORE,
   JOB_STATES,
   JOBS_CONCURRENCY,
@@ -344,7 +372,7 @@ export {
   JOBS_FETCHING_INTERVAL,
   LAST_MIGRATION_VERSION,
   OAUTH_LIFETIME,
-  OPENGRAPH_COMMENT,
+  OPENGRAPH_AND_OEMBED_COMMENT,
   PAGINATION_COUNT_DEFAULT,
   PODS_SCORE,
   PREVIEWS_SIZE,
@@ -375,7 +403,6 @@ export {
   THUMBNAILS_SIZE,
   USER_ROLES,
   VIDEO_CATEGORIES,
-  VIDEO_FILE_RESOLUTIONS,
   VIDEO_LANGUAGES,
   VIDEO_LICENCES,
   VIDEO_RATE_TYPES