1 <div *
ngIf=
"account" class=
"root">
2 <div class=
"account-info">
4 <div class=
"account-avatar-row">
5 <my-actor-avatar class=
"main-avatar" [account]=
"account"></my-actor-avatar>
8 <div class=
"section-label" i18n
>ACCOUNT
</div>
10 <div class=
"actor-info">
12 <div class=
"actor-display-name">
13 <h1 i18n-title [title]=
"'Created on ' + (account.createdAt | date)">{{ account.displayName }}
</h1>
15 <my-user-moderation-dropdown
16 [prependActions]=
"prependModerationActions"
17 buttonSize=
"small" [account]=
"account" [user]=
"accountUser" placement=
"bottom-left auto"
18 (userChanged)=
"onUserChanged()" (userDeleted)=
"onUserDeleted()"
19 ></my-user-moderation-dropdown>
21 <span *
ngIf=
"accountUser?.blocked" [ngbTooltip]=
"accountUser.blockedReason" class=
"badge badge-danger" i18n
>Banned
</span>
23 <my-account-block-badges [account]=
"account"></my-account-block-badges>
26 <div class=
"actor-handle">
27 <span>@{{ account.nameWithHost }}
</span>
28 <button [cdkCopyToClipboard]=
"account.nameWithHostForced" (click)=
"activateCopiedMessage()"
29 class=
"btn btn-outline-secondary btn-sm copy-button" title=
"Copy account handle" i18n-title
31 <span class=
"glyphicon glyphicon-duplicate"></span>
35 <div class=
"actor-counters">
36 <span i18n
>{naiveAggregatedSubscribers(), plural, =
1 {
1 subscriber} other {{{ naiveAggregatedSubscribers() }} subscribers}}
</span>
38 <span class=
"videos-count" *
ngIf=
"accountVideosCount !== undefined" i18n
>
39 {accountVideosCount, plural, =
1 {
1 videos} other {{{ accountVideosCount }} videos}}
47 <div class=
"description" [ngClass]=
"{ expanded: accountDescriptionExpanded }">
48 <div class=
"description-html" [innerHTML]=
"accountDescriptionHTML"></div>
51 <div *
ngIf=
"hasShowMoreDescription()" class=
"show-more" role=
"button"
52 (click)=
"accountDescriptionExpanded = !accountDescriptionExpanded"
53 title=
"Show the complete description" i18n-title i18n
59 <a *
ngIf=
"isManageable()" routerLink=
"/my-account" class=
"peertube-button-link orange-button" i18n
>
63 <my-subscribe-button *
ngIf=
"hasVideoChannels() && !isManageable()" [account]=
"account" [videoChannels]=
"videoChannels"></my-subscribe-button>
67 <div class=
"links" [ngClass]=
"{ 'on-channel-page': isOnChannelPage() }">
68 <ng-template #linkTemplate
let-item=
"item">
69 <a [routerLink]=
"item.routerLink" routerLinkActive=
"active" class=
"title-page">{{ item.label }}
</a>
72 <my-list-overflow [hidden]=
"hideMenu" [items]=
"links" [itemTemplate]=
"linkTemplate"></my-list-overflow>
74 <my-simple-search-input
75 [alwaysShow]=
"!isInSmallView()" (searchChanged)=
"searchChanged($event)"
76 (inputDisplayChanged)=
"onSearchInputDisplayChanged($event)" name=
"search-videos"
77 i18n-iconTitle
icon-title=
"Search account videos"
78 i18n-placeholder
placeholder=
"Search account videos"
79 ></my-simple-search-input>
82 <router-outlet></router-outlet>
85 <ng-container *
ngIf=
"prependModerationActions">
86 <my-account-report #accountReportModal
></my-account-report>