Browse Source

Include last request in user detail dialog

pull/7979/head
Thomas Kaul 2 weeks ago
parent
commit
eee6505af1
  1. 12
      apps/client/src/app/components/admin-users/admin-users.component.ts
  2. 9
      apps/client/src/app/components/admin-users/admin-users.html
  3. 2
      apps/client/src/app/components/user-detail-dialog/interfaces/interfaces.ts
  4. 4
      apps/client/src/app/components/user-detail-dialog/user-detail-dialog.component.ts
  5. 8
      apps/client/src/app/components/user-detail-dialog/user-detail-dialog.html
  6. 2
      apps/client/src/app/util/date.util.ts

12
apps/client/src/app/components/admin-users/admin-users.component.ts

@ -5,12 +5,8 @@ import {
import { GfUserDetailDialogComponent } from '@ghostfolio/client/components/user-detail-dialog/user-detail-dialog.component'; import { GfUserDetailDialogComponent } from '@ghostfolio/client/components/user-detail-dialog/user-detail-dialog.component';
import { ImpersonationStorageService } from '@ghostfolio/client/services/impersonation-storage.service'; import { ImpersonationStorageService } from '@ghostfolio/client/services/impersonation-storage.service';
import { UserService } from '@ghostfolio/client/services/user/user.service'; import { UserService } from '@ghostfolio/client/services/user/user.service';
import { formatDistanceToNow } from '@ghostfolio/client/util/date.util'; import { formatRelativeTime } from '@ghostfolio/client/util/date.util';
import { import { DEFAULT_LOCALE, DEFAULT_PAGE_SIZE } from '@ghostfolio/common/config';
DEFAULT_LANGUAGE_CODE,
DEFAULT_LOCALE,
DEFAULT_PAGE_SIZE
} from '@ghostfolio/common/config';
import { ConfirmationDialogType } from '@ghostfolio/common/enums'; import { ConfirmationDialogType } from '@ghostfolio/common/enums';
import { import {
canDeleteUser, canDeleteUser,
@ -92,7 +88,7 @@ export class GfAdminUsersComponent implements OnInit {
protected defaultDateFormat: string; protected defaultDateFormat: string;
protected displayedColumns: string[] = []; protected displayedColumns: string[] = [];
protected readonly canDeleteUser = canDeleteUser; protected readonly canDeleteUser = canDeleteUser;
protected readonly formatDistanceToNow = formatDistanceToNow; protected readonly formatRelativeTime = formatRelativeTime;
protected readonly getCountryName = getCountryName; protected readonly getCountryName = getCountryName;
protected readonly getEmojiFlag = getEmojiFlag; protected readonly getEmojiFlag = getEmojiFlag;
protected hasPermissionForSubscription: boolean; protected hasPermissionForSubscription: boolean;
@ -316,7 +312,7 @@ export class GfAdminUsersComponent implements OnInit {
currentUserId: this.user?.id, currentUserId: this.user?.id,
deviceType: this.deviceType(), deviceType: this.deviceType(),
hasPermissionForSubscription: this.hasPermissionForSubscription, hasPermissionForSubscription: this.hasPermissionForSubscription,
language: this.user?.settings?.language ?? DEFAULT_LANGUAGE_CODE, language: this.user?.settings?.language,
locale: this.user?.settings?.locale ?? DEFAULT_LOCALE, locale: this.user?.settings?.locale ?? DEFAULT_LOCALE,
userId: aUserId userId: aUserId
} satisfies UserDetailDialogParams, } satisfies UserDetailDialogParams,

9
apps/client/src/app/components/admin-users/admin-users.html

@ -32,7 +32,7 @@
class="ml-1" class="ml-1"
i18n-title i18n-title
title="Expires {{ title="Expires {{
formatDistanceToNow({ formatRelativeTime({
date: element.subscription.expiresAt, date: element.subscription.expiresAt,
language: user?.settings?.language language: user?.settings?.language
}) })
@ -83,7 +83,7 @@
mat-cell mat-cell
> >
{{ {{
formatDistanceToNow({ formatRelativeTime({
date: element.createdAt, date: element.createdAt,
language: user?.settings?.language language: user?.settings?.language
}) })
@ -183,10 +183,9 @@
<th <th
*matHeaderCellDef *matHeaderCellDef
class="mat-mdc-header-cell px-1 py-2" class="mat-mdc-header-cell px-1 py-2"
i18n
mat-header-cell mat-header-cell
> >
Last Request <ng-container i18n>Last Request</ng-container>
</th> </th>
<td <td
*matCellDef="let element" *matCellDef="let element"
@ -194,7 +193,7 @@
mat-cell mat-cell
> >
{{ {{
formatDistanceToNow({ formatRelativeTime({
date: element.lastActivity, date: element.lastActivity,
language: user?.settings?.language language: user?.settings?.language
}) })

2
apps/client/src/app/components/user-detail-dialog/interfaces/interfaces.ts

@ -2,7 +2,7 @@ export interface UserDetailDialogParams {
currentUserId: string; currentUserId: string;
deviceType: string; deviceType: string;
hasPermissionForSubscription: boolean; hasPermissionForSubscription: boolean;
language: string; language?: string;
locale: string; locale: string;
userId: string; userId: string;
} }

4
apps/client/src/app/components/user-detail-dialog/user-detail-dialog.component.ts

@ -1,4 +1,4 @@
import { formatDistanceToNow } from '@ghostfolio/client/util/date.util'; import { formatRelativeTime } from '@ghostfolio/client/util/date.util';
import { import {
canDeleteUser, canDeleteUser,
getCountryName, getCountryName,
@ -56,7 +56,7 @@ import {
export class GfUserDetailDialogComponent implements OnInit { export class GfUserDetailDialogComponent implements OnInit {
protected readonly baseCurrency: string; protected readonly baseCurrency: string;
protected readonly canDeleteUser = canDeleteUser; protected readonly canDeleteUser = canDeleteUser;
protected readonly formatDistanceToNow = formatDistanceToNow; protected readonly formatRelativeTime = formatRelativeTime;
protected readonly getCountryName = getCountryName; protected readonly getCountryName = getCountryName;
protected isLoading = true; protected isLoading = true;

8
apps/client/src/app/components/user-detail-dialog/user-detail-dialog.html

@ -161,12 +161,10 @@
size="medium" size="medium"
[isLoading]="isLoading" [isLoading]="isLoading"
[value]=" [value]="
user?.lastActivity formatRelativeTime({
? formatDistanceToNow({ date: user?.lastActivity,
date: user.lastActivity,
language: data.language language: data.language
}) }) || '-'
: '-'
" "
>Last Request</gf-value >Last Request</gf-value
> >

2
apps/client/src/app/util/date.util.ts

@ -6,7 +6,7 @@ import {
parseISO parseISO
} from 'date-fns'; } from 'date-fns';
export function formatDistanceToNow({ export function formatRelativeTime({
date, date,
language language
}: { }: {

Loading…
Cancel
Save