diff options
author | Nassim Bounouas <NassimBounouas@users.noreply.github.com> | 2019-06-19 14:57:39 +0200 |
---|---|---|
committer | Chocobozzz <me@florianbigard.com> | 2019-06-19 14:57:39 +0200 |
commit | e379f813d45c4a83442aa13268d351e2605a7a01 (patch) | |
tree | c912ae77b981574c2e859bc5740ca2180f61f9b6 /client/src/app | |
parent | b6a1dd4d1b3b0032f8b968e72cbd074f646e8827 (diff) | |
download | PeerTube-e379f813d45c4a83442aa13268d351e2605a7a01.tar.gz PeerTube-e379f813d45c4a83442aa13268d351e2605a7a01.tar.zst PeerTube-e379f813d45c4a83442aa13268d351e2605a7a01.zip |
Feature/completeUsernameCopy (#1913)
* #1843 Copy icon added to account page to copy Username
* #1843 Store an account name with the host forced and bind it to copy button
* #1843 tslint correction
* #1843 copy to clipboard replaced by ngx-clipboard
Diffstat (limited to 'client/src/app')
-rw-r--r-- | client/src/app/+accounts/accounts.component.html | 7 | ||||
-rw-r--r-- | client/src/app/shared/account/account.model.ts | 2 | ||||
-rw-r--r-- | client/src/app/shared/actor/actor.model.ts | 4 |
3 files changed, 9 insertions, 4 deletions
diff --git a/client/src/app/+accounts/accounts.component.html b/client/src/app/+accounts/accounts.component.html index 038e18c4b..1172f7ba7 100644 --- a/client/src/app/+accounts/accounts.component.html +++ b/client/src/app/+accounts/accounts.component.html | |||
@@ -7,8 +7,11 @@ | |||
7 | <div class="actor-info"> | 7 | <div class="actor-info"> |
8 | <div class="actor-names"> | 8 | <div class="actor-names"> |
9 | <div class="actor-display-name">{{ account.displayName }}</div> | 9 | <div class="actor-display-name">{{ account.displayName }}</div> |
10 | <div class="actor-name">{{ account.nameWithHost }}</div> | 10 | <div class="actor-name">{{ account.nameWithHost }} |
11 | 11 | <button ngxClipboard [cbContent]="account.nameWithHostForced" type="button" class="btn btn-outline-secondary btn-sm"> | |
12 | <span class="glyphicon glyphicon-copy"></span> | ||
13 | </button> | ||
14 | </div> | ||
12 | <span *ngIf="user?.blocked" [ngbTooltip]="user.blockedReason" class="badge badge-danger" i18n>Banned</span> | 15 | <span *ngIf="user?.blocked" [ngbTooltip]="user.blockedReason" class="badge badge-danger" i18n>Banned</span> |
13 | <span *ngIf="account.mutedByUser" class="badge badge-danger" i18n>Muted</span> | 16 | <span *ngIf="account.mutedByUser" class="badge badge-danger" i18n>Muted</span> |
14 | <span *ngIf="account.mutedServerByUser" class="badge badge-danger" i18n>Muted by your instance</span> | 17 | <span *ngIf="account.mutedServerByUser" class="badge badge-danger" i18n>Muted by your instance</span> |
diff --git a/client/src/app/shared/account/account.model.ts b/client/src/app/shared/account/account.model.ts index c5cd2051c..61f09fc06 100644 --- a/client/src/app/shared/account/account.model.ts +++ b/client/src/app/shared/account/account.model.ts | |||
@@ -5,6 +5,7 @@ export class Account extends Actor implements ServerAccount { | |||
5 | displayName: string | 5 | displayName: string |
6 | description: string | 6 | description: string |
7 | nameWithHost: string | 7 | nameWithHost: string |
8 | nameWithHostForced: string | ||
8 | mutedByUser: boolean | 9 | mutedByUser: boolean |
9 | mutedByInstance: boolean | 10 | mutedByInstance: boolean |
10 | mutedServerByUser: boolean | 11 | mutedServerByUser: boolean |
@@ -19,6 +20,7 @@ export class Account extends Actor implements ServerAccount { | |||
19 | this.description = hash.description | 20 | this.description = hash.description |
20 | this.userId = hash.userId | 21 | this.userId = hash.userId |
21 | this.nameWithHost = Actor.CREATE_BY_STRING(this.name, this.host) | 22 | this.nameWithHost = Actor.CREATE_BY_STRING(this.name, this.host) |
23 | this.nameWithHostForced = Actor.CREATE_BY_STRING(this.name, this.host, true) | ||
22 | 24 | ||
23 | this.mutedByUser = false | 25 | this.mutedByUser = false |
24 | this.mutedByInstance = false | 26 | this.mutedByInstance = false |
diff --git a/client/src/app/shared/actor/actor.model.ts b/client/src/app/shared/actor/actor.model.ts index 5a517c975..285f71ce0 100644 --- a/client/src/app/shared/actor/actor.model.ts +++ b/client/src/app/shared/actor/actor.model.ts | |||
@@ -23,11 +23,11 @@ export abstract class Actor implements ActorServer { | |||
23 | return window.location.origin + '/client/assets/images/default-avatar.png' | 23 | return window.location.origin + '/client/assets/images/default-avatar.png' |
24 | } | 24 | } |
25 | 25 | ||
26 | static CREATE_BY_STRING (accountName: string, host: string) { | 26 | static CREATE_BY_STRING (accountName: string, host: string, forceHostname = false) { |
27 | const absoluteAPIUrl = getAbsoluteAPIUrl() | 27 | const absoluteAPIUrl = getAbsoluteAPIUrl() |
28 | const thisHost = new URL(absoluteAPIUrl).host | 28 | const thisHost = new URL(absoluteAPIUrl).host |
29 | 29 | ||
30 | if (host.trim() === thisHost) return accountName | 30 | if (host.trim() === thisHost && !forceHostname) return accountName |
31 | 31 | ||
32 | return accountName + '@' + host | 32 | return accountName + '@' + host |
33 | } | 33 | } |