]> git.immae.eu Git - github/Chocobozzz/PeerTube.git/blobdiff - client/src/app/+admin/system/logs/logs.component.ts
Don't display log level in audit logs view
[github/Chocobozzz/PeerTube.git] / client / src / app / +admin / system / logs / logs.component.ts
index 17abb8409365ec08f1c0cc242a8b0b242b123e5a..ad9d702d8365c29393092cdfbab54466beab05f1 100644 (file)
@@ -1,35 +1,36 @@
 import { Component, ElementRef, OnInit, ViewChild } from '@angular/core'
-import { LogsService } from '@app/+admin/system/logs/logs.service'
 import { Notifier } from '@app/core'
-import { LogRow } from '@app/+admin/system/logs/log-row.model'
-import { I18n } from '@ngx-translate/i18n-polyfill'
-import { LogLevel } from '@shared/models/server/log-level.type'
+import { LogLevel } from '@shared/models'
+import { LogRow } from './log-row.model'
+import { LogsService } from './logs.service'
 
 @Component({
   templateUrl: './logs.component.html',
   styleUrls: [ './logs.component.scss' ]
 })
 export class LogsComponent implements OnInit {
-  @ViewChild('logsElement') logsElement: ElementRef<HTMLElement>
+  @ViewChild('logsElement', { static: true }) logsElement: ElementRef<HTMLElement>
 
   loading = false
 
   logs: LogRow[] = []
-  timeChoices: { id: string, label: string }[] = []
+  timeChoices: { id: string, label: string, dateFormat: string }[] = []
   levelChoices: { id: LogLevel, label: string }[] = []
+  logTypeChoices: { id: 'audit' | 'standard', label: string }[] = []
 
   startDate: string
   level: LogLevel
+  logType: 'audit' | 'standard'
 
   constructor (
     private logsService: LogsService,
-    private notifier: Notifier,
-    private i18n: I18n
+    private notifier: Notifier
   ) { }
 
   ngOnInit (): void {
     this.buildTimeChoices()
     this.buildLevelChoices()
+    this.buildLogTypeChoices()
 
     this.load()
   }
@@ -42,7 +43,7 @@ export class LogsComponent implements OnInit {
   load () {
     this.loading = true
 
-    this.logsService.getLogs(this.level, this.startDate)
+    this.logsService.getLogs({ isAuditLog: this.isAuditLog(), level: this.level, startDate: this.startDate })
         .subscribe(
           logs => {
             this.logs = logs
@@ -58,6 +59,10 @@ export class LogsComponent implements OnInit {
         )
   }
 
+  isAuditLog () {
+    return this.logType === 'audit'
+  }
+
   buildTimeChoices () {
     const lastHour = new Date()
     lastHour.setHours(lastHour.getHours() - 1)
@@ -71,15 +76,18 @@ export class LogsComponent implements OnInit {
     this.timeChoices = [
       {
         id: lastWeek.toISOString(),
-        label: this.i18n('Last week')
+        label: $localize`Last week`,
+        dateFormat: 'shortDate'
       },
       {
         id: lastDay.toISOString(),
-        label: this.i18n('Last day')
+        label: $localize`Last day`,
+        dateFormat: 'short'
       },
       {
         id: lastHour.toISOString(),
-        label: this.i18n('Last hour')
+        label: $localize`Last hour`,
+        dateFormat: 'mediumTime'
       }
     ]
 
@@ -90,22 +98,37 @@ export class LogsComponent implements OnInit {
     this.levelChoices = [
       {
         id: 'debug',
-        label: this.i18n('Debug')
+        label: $localize`debug`
       },
       {
         id: 'info',
-        label: this.i18n('Info')
+        label: $localize`info`
       },
       {
         id: 'warn',
-        label: this.i18n('Warning')
+        label: $localize`warning`
       },
       {
         id: 'error',
-        label: this.i18n('Error')
+        label: $localize`error`
+      }
+    ]
+
+    this.level = 'warn'
+  }
+
+  buildLogTypeChoices () {
+    this.logTypeChoices = [
+      {
+        id: 'standard',
+        label: $localize`Standard logs`
+      },
+      {
+        id: 'audit',
+        label: $localize`Audit logs`
       }
     ]
 
-    this.level = 'info'
+    this.logType = 'audit'
   }
 }