UI/Web/src/app/admin/manage-users/manage-users.component.html
{{t('invite')}} @switch (member.identityProvider) { @case (IdentityProvider.OpenIdConnect) { } @case (IdentityProvider.Kavita) { } } {{t('name-header')}} @if (!member.isPending) { {{t('profile-link-alt')}} } {{member.username | titlecase}} @if (member.isPending) { {{t('pending-title')}} } {{t('last-active-header')}} @if ((messageHub.onlineUsersSignal() ?? []).includes(member.username)) { {{t('online-now-tooltip')}} } @else { {{member.lastActiveUtc | utcToLocalDate | timeAgo | sentenceCase | defaultDate}} } {{t('sharing-header')}}{{t('roles-header')}}{{t('actions-header')}} @if (loadingMembers) { } @else { {{t('no-data')}} }
@switch (member.identityProvider) { @case (IdentityProvider.OpenIdConnect) { } @case (IdentityProvider.Kavita) { } }
@if (member.isPending) { {{t('pending-title')}} }
{{t('last-active-header')}}
@if ((messageHub.onlineUsers$ | async)?.includes(member.username)) { {{t('online-now-tooltip')}} } @else { {{member.lastActiveUtc | utcToLocalDate | timeAgo | sentenceCase | defaultDate}} }
{{t('sharing-header')}}
{{t('roles-header')}}
@if (member.libraries.length > 0) { @if (hasAdminRole(member) || member.libraries.length === libraryCount) { {{t('all-libraries')}} } @else if (member.libraries.length > 5) { {{t('too-many-libraries')}} } @else { @for(lib of member.libraries; track lib.id) { {{lib.name}} } } } @else { {{null | defaultValue}} } @if (getRoles(member); as roles) { @if (roles.length === 0) { {{null | defaultValue}} } @else if (hasAdminRole(member)) { {{Role.Admin | roleLocalized}} } @else { @for (role of roles; track role) { {{role | roleLocalized}} } } } @else { {{null | defaultValue}} } @if (!isMemberYou(member) && accountService.hasAdminRole()) { @if (member.isPending) { } @else { } }