Add frontend owner filtering

Add owner to doc cards, table
Frontend testing for owner filtering
This commit is contained in:
shamoon
2023-05-02 20:41:41 -07:00
parent 487d3a6262
commit c2b5451fe4
18 changed files with 549 additions and 31 deletions

View File

@@ -0,0 +1,42 @@
import { Pipe, PipeTransform } from '@angular/core'
import { UserService } from '../services/rest/user.service'
import {
PermissionAction,
PermissionType,
PermissionsService,
} from '../services/permissions.service'
import { PaperlessUser } from '../data/paperless-user'
@Pipe({
name: 'username',
})
export class UsernamePipe implements PipeTransform {
users: PaperlessUser[]
constructor(
permissionsService: PermissionsService,
userService: UserService
) {
if (
permissionsService.currentUserCan(
PermissionAction.View,
PermissionType.User
)
) {
userService.listAll().subscribe((r) => (this.users = r.results))
}
}
transform(userID: number): string {
return this.users
? this.getName(this.users.find((u) => u.id === userID)) ?? ''
: $localize`Shared`
}
getName(user: PaperlessUser): string {
if (!user) return ''
const name = [user.first_name, user.last_name].join(' ')
if (name.length > 1) return name.trim()
return user.username
}
}