mirror of https://github.com/Chocobozzz/PeerTube
Add auth plugin info in users list
parent
e5c86ba7c2
commit
8bb71f2e33
|
@ -46,6 +46,7 @@
|
|||
<th i18n>Email</th>
|
||||
<th i18n pSortableColumn="videoQuotaUsed">Video quota <p-sortIcon field="videoQuotaUsed"></p-sortIcon></th>
|
||||
<th i18n>Role</th>
|
||||
<th i18n>Auth plugin</th>
|
||||
<th i18n pSortableColumn="createdAt">Created <p-sortIcon field="createdAt"></p-sortIcon></th>
|
||||
<th style="width: 50px;"></th>
|
||||
</tr>
|
||||
|
@ -97,7 +98,13 @@
|
|||
|
||||
<td>{{ user.videoQuotaUsed }} / {{ user.videoQuota }}</td>
|
||||
<td>{{ user.roleLabel }}</td>
|
||||
|
||||
<td>
|
||||
<ng-container *ngIf="user.pluginAuth">{{ user.pluginAuth }}</ng-container>
|
||||
</td>
|
||||
|
||||
<td [title]="user.createdAt">{{ user.createdAt }}</td>
|
||||
|
||||
<td class="action-cell">
|
||||
<my-user-moderation-dropdown *ngIf="!isInSelectionMode()" [user]="user" (userChanged)="onUserChanged()" (userDeleted)="onUserChanged()">
|
||||
</my-user-moderation-dropdown>
|
||||
|
|
|
@ -69,6 +69,8 @@ export class User implements UserServerModel {
|
|||
noInstanceConfigWarningModal: boolean
|
||||
noWelcomeModal: boolean
|
||||
|
||||
pluginAuth: string | null
|
||||
|
||||
createdAt: Date
|
||||
|
||||
constructor (hash: Partial<UserServerModel>) {
|
||||
|
@ -112,6 +114,8 @@ export class User implements UserServerModel {
|
|||
|
||||
this.createdAt = hash.createdAt
|
||||
|
||||
this.pluginAuth = hash.pluginAuth
|
||||
|
||||
if (hash.account !== undefined) {
|
||||
this.account = new Account(hash.account)
|
||||
}
|
||||
|
|
|
@ -806,7 +806,9 @@ export class UserModel extends Model<UserModel> {
|
|||
|
||||
videoChannels: [],
|
||||
|
||||
createdAt: this.createdAt
|
||||
createdAt: this.createdAt,
|
||||
|
||||
pluginAuth: this.pluginAuth
|
||||
}
|
||||
|
||||
if (parameters.withAdminFlags) {
|
||||
|
|
|
@ -12,7 +12,7 @@ import {
|
|||
updateMyUser,
|
||||
userLogin,
|
||||
wait,
|
||||
login, refreshToken, getConfig, updatePluginSettings
|
||||
login, refreshToken, getConfig, updatePluginSettings, getUsersList
|
||||
} from '../../../shared/extra-utils'
|
||||
import { User, UserRole, ServerConfig } from '@shared/models'
|
||||
import { expect } from 'chai'
|
||||
|
@ -225,6 +225,20 @@ describe('Test id and pass auth plugins', function () {
|
|||
expect(crashAuth).to.not.exist
|
||||
})
|
||||
|
||||
it('Should display plugin auth information in users list', async function () {
|
||||
const res = await getUsersList(server.url, server.accessToken)
|
||||
|
||||
const users: User[] = res.body.data
|
||||
|
||||
const root = users.find(u => u.username === 'root')
|
||||
const crash = users.find(u => u.username === 'crash')
|
||||
const laguna = users.find(u => u.username === 'laguna')
|
||||
|
||||
expect(root.pluginAuth).to.be.null
|
||||
expect(crash.pluginAuth).to.equal('peertube-plugin-test-id-pass-auth-one')
|
||||
expect(laguna.pluginAuth).to.equal('peertube-plugin-test-id-pass-auth-two')
|
||||
})
|
||||
|
||||
after(async function () {
|
||||
await cleanupTests([ server ])
|
||||
})
|
||||
|
|
|
@ -50,6 +50,8 @@ export interface User {
|
|||
noWelcomeModal: boolean
|
||||
|
||||
createdAt: Date
|
||||
|
||||
pluginAuth: string | null
|
||||
}
|
||||
|
||||
export interface MyUserSpecialPlaylist {
|
||||
|
|
Loading…
Reference in New Issue