paperless-ngx/src-ui/src/app/components/manage/logs/logs.component.ts

49 lines
1.2 KiB
TypeScript
Raw Normal View History

2020-10-27 01:10:18 +01:00
import { Component, OnInit } from '@angular/core';
2020-11-02 15:56:14 +01:00
import { LOG_LEVELS, LOG_LEVEL_INFO, PaperlessLog } from 'src/app/data/paperless-log';
import { LogService } from 'src/app/services/rest/log.service';
2020-10-27 01:10:18 +01:00
@Component({
selector: 'app-logs',
templateUrl: './logs.component.html',
styleUrls: ['./logs.component.scss']
2020-10-27 01:10:18 +01:00
})
export class LogsComponent implements OnInit {
2020-12-14 20:59:18 +01:00
constructor(private logService: LogService) { }
logs: PaperlessLog[] = []
2020-11-02 15:56:14 +01:00
level: number = LOG_LEVEL_INFO
2020-10-27 01:10:18 +01:00
ngOnInit(): void {
2020-11-02 15:56:14 +01:00
this.reload()
}
reload() {
this.logService.list(1, 50, 'created', true, {'level__gte': this.level}).subscribe(result => this.logs = result.results)
}
getLevelText(level: number) {
return LOG_LEVELS.find(l => l.id == level)?.name
}
onScroll() {
let lastCreated = null
if (this.logs.length > 0) {
2020-11-12 10:05:19 +01:00
lastCreated = new Date(this.logs[this.logs.length-1].created).toISOString()
}
this.logService.list(1, 25, 'created', true, {'created__lt': lastCreated, 'level__gte': this.level}).subscribe(result => {
this.logs.push(...result.results)
})
2020-10-27 01:10:18 +01:00
}
2020-11-02 15:56:14 +01:00
getLevels() {
return LOG_LEVELS
}
setLevel(id) {
this.level = id
this.reload()
}
2020-10-27 01:10:18 +01:00
}