]> git.immae.eu Git - github/Chocobozzz/PeerTube.git/blobdiff - server/helpers/audit-logger.ts
Fix video import CLI script
[github/Chocobozzz/PeerTube.git] / server / helpers / audit-logger.ts
index f6eea7d9046707b159e4b0396ac31bf46789a34d..f536da43917345545c5c0df13c0ca0563460a07c 100644 (file)
@@ -1,13 +1,18 @@
 import * as path from 'path'
+import * as express from 'express'
 import { diff } from 'deep-object-diff'
 import { chain } from 'lodash'
 import * as flatten from 'flat'
 import * as winston from 'winston'
-import { CONFIG } from '../initializers'
 import { jsonLoggerFormat, labelFormatter } from './logger'
-import { VideoDetails, User, VideoChannel, VideoAbuse } from '../../shared'
+import { User, VideoAbuse, VideoChannel, VideoDetails, VideoImport } from '../../shared'
 import { VideoComment } from '../../shared/models/videos/video-comment.model'
 import { CustomConfig } from '../../shared/models/server/custom-config.model'
+import { CONFIG } from '../initializers/config'
+
+function getAuditIdFromRes (res: express.Response) {
+  return res.locals.oauth.token.User.username
+}
 
 enum AUDIT_TYPE {
   CREATE = 'create',
@@ -111,7 +116,8 @@ const videoKeysToKeep = [
   'channel-uuid',
   'channel-name',
   'support',
-  'commentsEnabled'
+  'commentsEnabled',
+  'downloadEnabled'
 ]
 class VideoAuditView extends EntityAuditView {
   constructor (private video: VideoDetails) {
@@ -119,6 +125,17 @@ class VideoAuditView extends EntityAuditView {
   }
 }
 
+const videoImportKeysToKeep = [
+  'id',
+  'targetUrl',
+  'video-name'
+]
+class VideoImportAuditView extends EntityAuditView {
+  constructor (private videoImport: VideoImport) {
+    super(videoImportKeysToKeep, 'video-import', videoImport)
+  }
+}
+
 const commentKeysToKeep = [
   'id',
   'text',
@@ -223,6 +240,7 @@ const customConfigKeysToKeep = [
   'cache-captions-size',
   'signup-enabled',
   'signup-limit',
+  'signup-requiresEmailVerification',
   'admin-email',
   'user-videoQuota',
   'transcoding-enabled',
@@ -235,17 +253,18 @@ class CustomConfigAuditView extends EntityAuditView {
     const resolutionsDict = infos.transcoding.resolutions
     const resolutionsArray = []
     Object.entries(resolutionsDict).forEach(([resolution, isEnabled]) => {
-      if (isEnabled) {
-        resolutionsArray.push(resolution)
-      }
+      if (isEnabled) resolutionsArray.push(resolution)
     })
-    infos.transcoding.resolutions = resolutionsArray
+    Object.assign({}, infos, { transcoding: { resolutions: resolutionsArray } })
     super(customConfigKeysToKeep, 'config', infos)
   }
 }
 
 export {
+  getAuditIdFromRes,
+
   auditLoggerFactory,
+  VideoImportAuditView,
   VideoChannelAuditView,
   CommentAuditView,
   UserAuditView,