aboutsummaryrefslogtreecommitdiffhomepage
path: root/client/src/app
diff options
context:
space:
mode:
Diffstat (limited to 'client/src/app')
-rw-r--r--client/src/app/+admin/follows/followers-list/followers-list.component.html2
-rw-r--r--client/src/app/+admin/follows/video-redundancies-list/video-redundancies-list.component.html2
-rw-r--r--client/src/app/+admin/moderation/instance-blocklist/instance-account-blocklist.component.html2
-rw-r--r--client/src/app/+admin/moderation/instance-blocklist/instance-server-blocklist.component.html2
-rw-r--r--client/src/app/+admin/moderation/video-abuse-list/video-abuse-list.component.html2
-rw-r--r--client/src/app/+admin/moderation/video-blacklist-list/video-blacklist-list.component.html2
-rw-r--r--client/src/app/+my-account/my-account-settings/my-account-change-email/my-account-change-email.component.html3
-rw-r--r--client/src/app/+my-account/my-account-settings/my-account-settings.component.html2
-rw-r--r--client/src/app/header/header.component.scss1
-rw-r--r--client/src/app/shared/forms/markdown-textarea.component.scss3
-rw-r--r--client/src/app/shared/misc/peertube-web-storage.ts42
-rw-r--r--client/src/app/videos/+video-watch/comment/video-comments.component.html8
-rw-r--r--client/src/app/videos/+video-watch/comment/video-comments.component.scss4
13 files changed, 41 insertions, 34 deletions
diff --git a/client/src/app/+admin/follows/followers-list/followers-list.component.html b/client/src/app/+admin/follows/followers-list/followers-list.component.html
index 93378a533..298871fce 100644
--- a/client/src/app/+admin/follows/followers-list/followers-list.component.html
+++ b/client/src/app/+admin/follows/followers-list/followers-list.component.html
@@ -23,7 +23,7 @@
23 <th style="width: 100px;" i18n pSortableColumn="state">State <p-sortIcon field="state"></p-sortIcon></th> 23 <th style="width: 100px;" i18n pSortableColumn="state">State <p-sortIcon field="state"></p-sortIcon></th>
24 <th style="width: 100px;" i18n pSortableColumn="score">Score <p-sortIcon field="score"></p-sortIcon></th> 24 <th style="width: 100px;" i18n pSortableColumn="score">Score <p-sortIcon field="score"></p-sortIcon></th>
25 <th style="width: 150px;" i18n pSortableColumn="createdAt">Created <p-sortIcon field="createdAt"></p-sortIcon></th> 25 <th style="width: 150px;" i18n pSortableColumn="createdAt">Created <p-sortIcon field="createdAt"></p-sortIcon></th>
26 <th style="width: 100px;"></th> 26 <th style="width: 150px;"></th>
27 </tr> 27 </tr>
28 </ng-template> 28 </ng-template>
29 29
diff --git a/client/src/app/+admin/follows/video-redundancies-list/video-redundancies-list.component.html b/client/src/app/+admin/follows/video-redundancies-list/video-redundancies-list.component.html
index 28d57f83c..c08154bcd 100644
--- a/client/src/app/+admin/follows/video-redundancies-list/video-redundancies-list.component.html
+++ b/client/src/app/+admin/follows/video-redundancies-list/video-redundancies-list.component.html
@@ -22,7 +22,7 @@
22 <th style="width: 160px;" i18n *ngIf="isDisplayingRemoteVideos()">Strategy</th> 22 <th style="width: 160px;" i18n *ngIf="isDisplayingRemoteVideos()">Strategy</th>
23 <th i18n pSortableColumn="name">Video <p-sortIcon field="name"></p-sortIcon></th > 23 <th i18n pSortableColumn="name">Video <p-sortIcon field="name"></p-sortIcon></th >
24 <th style="width: 100px;" i18n *ngIf="isDisplayingRemoteVideos()">Total size</th> 24 <th style="width: 100px;" i18n *ngIf="isDisplayingRemoteVideos()">Total size</th>
25 <th style="width: 80px;"></th> 25 <th style="width: 150px;"></th>
26 </tr> 26 </tr>
27 </ng-template> 27 </ng-template>
28 28
diff --git a/client/src/app/+admin/moderation/instance-blocklist/instance-account-blocklist.component.html b/client/src/app/+admin/moderation/instance-blocklist/instance-account-blocklist.component.html
index a4ab2a58c..b7d40be60 100644
--- a/client/src/app/+admin/moderation/instance-blocklist/instance-account-blocklist.component.html
+++ b/client/src/app/+admin/moderation/instance-blocklist/instance-account-blocklist.component.html
@@ -21,7 +21,7 @@
21 <tr> 21 <tr>
22 <th style="width: 100%;" i18n>Account</th> 22 <th style="width: 100%;" i18n>Account</th>
23 <th style="width: 150px;" i18n pSortableColumn="createdAt">Muted at <p-sortIcon field="createdAt"></p-sortIcon></th> 23 <th style="width: 150px;" i18n pSortableColumn="createdAt">Muted at <p-sortIcon field="createdAt"></p-sortIcon></th>
24 <th style="width: 100px;"></th> <!-- column for action buttons --> 24 <th style="width: 150px;"></th> <!-- column for action buttons -->
25 </tr> 25 </tr>
26 </ng-template> 26 </ng-template>
27 27
diff --git a/client/src/app/+admin/moderation/instance-blocklist/instance-server-blocklist.component.html b/client/src/app/+admin/moderation/instance-blocklist/instance-server-blocklist.component.html
index dab068dd6..589a11b7b 100644
--- a/client/src/app/+admin/moderation/instance-blocklist/instance-server-blocklist.component.html
+++ b/client/src/app/+admin/moderation/instance-blocklist/instance-server-blocklist.component.html
@@ -25,7 +25,7 @@
25 <tr> 25 <tr>
26 <th style="width: 100%;" i18n>Instance</th> 26 <th style="width: 100%;" i18n>Instance</th>
27 <th style="width: 150px;" i18n pSortableColumn="createdAt">Muted at <p-sortIcon field="createdAt"></p-sortIcon></th> 27 <th style="width: 150px;" i18n pSortableColumn="createdAt">Muted at <p-sortIcon field="createdAt"></p-sortIcon></th>
28 <th style="width: 100px;"></th> <!-- column for action buttons --> 28 <th style="width: 150px;"></th> <!-- column for action buttons -->
29 </tr> 29 </tr>
30 </ng-template> 30 </ng-template>
31 31
diff --git a/client/src/app/+admin/moderation/video-abuse-list/video-abuse-list.component.html b/client/src/app/+admin/moderation/video-abuse-list/video-abuse-list.component.html
index 1c9530152..d30475794 100644
--- a/client/src/app/+admin/moderation/video-abuse-list/video-abuse-list.component.html
+++ b/client/src/app/+admin/moderation/video-abuse-list/video-abuse-list.component.html
@@ -41,7 +41,7 @@
41 <th i18n>Video</th> 41 <th i18n>Video</th>
42 <th style="width: 150px;" i18n pSortableColumn="createdAt">Created <p-sortIcon field="createdAt"></p-sortIcon></th> 42 <th style="width: 150px;" i18n pSortableColumn="createdAt">Created <p-sortIcon field="createdAt"></p-sortIcon></th>
43 <th i18n pSortableColumn="state" style="width: 80px;">State <p-sortIcon field="state"></p-sortIcon></th> 43 <th i18n pSortableColumn="state" style="width: 80px;">State <p-sortIcon field="state"></p-sortIcon></th>
44 <th style="width: 120px;"></th> 44 <th style="width: 150px;"></th>
45 </tr> 45 </tr>
46 </ng-template> 46 </ng-template>
47 47
diff --git a/client/src/app/+admin/moderation/video-blacklist-list/video-blacklist-list.component.html b/client/src/app/+admin/moderation/video-blacklist-list/video-blacklist-list.component.html
index c4c4e765a..cfa04514f 100644
--- a/client/src/app/+admin/moderation/video-blacklist-list/video-blacklist-list.component.html
+++ b/client/src/app/+admin/moderation/video-blacklist-list/video-blacklist-list.component.html
@@ -25,7 +25,7 @@
25 <th style="width: 100px;" i18n>Sensitive</th> 25 <th style="width: 100px;" i18n>Sensitive</th>
26 <th style="width: 120px;" i18n>Unfederated</th> 26 <th style="width: 120px;" i18n>Unfederated</th>
27 <th style="width: 150px;" i18n pSortableColumn="createdAt">Date <p-sortIcon field="createdAt"></p-sortIcon></th> 27 <th style="width: 150px;" i18n pSortableColumn="createdAt">Date <p-sortIcon field="createdAt"></p-sortIcon></th>
28 <th style="width: 120px;"></th> 28 <th style="width: 150px;"></th>
29 </tr> 29 </tr>
30 </ng-template> 30 </ng-template>
31 31
diff --git a/client/src/app/+my-account/my-account-settings/my-account-change-email/my-account-change-email.component.html b/client/src/app/+my-account/my-account-settings/my-account-change-email/my-account-change-email.component.html
index f39f66696..ce176d682 100644
--- a/client/src/app/+my-account/my-account-settings/my-account-change-email/my-account-change-email.component.html
+++ b/client/src/app/+my-account/my-account-settings/my-account-change-email/my-account-change-email.component.html
@@ -9,7 +9,7 @@
9 <span class="email">{{ user.pendingEmail }}</span> is awaiting email verification 9 <span class="email">{{ user.pendingEmail }}</span> is awaiting email verification
10</div> 10</div>
11 11
12<form role="form" class="change-email" (ngSubmit)="changeEmail()" [formGroup]="form"> 12<form role="form" class="change-email" (ngSubmit)="changeEmail()" [formGroup]="form" *ngIf="user.pluginAuth === null">
13 13
14 <div class="form-group"> 14 <div class="form-group">
15 <label i18n for="new-email">New email</label> 15 <label i18n for="new-email">New email</label>
@@ -23,6 +23,7 @@
23 </div> 23 </div>
24 24
25 <div class="form-group"> 25 <div class="form-group">
26 <label i18n for="new-email">Your current password</label>
26 <input 27 <input
27 type="password" id="password" i18n-placeholder placeholder="Your password" autocomplete="off" 28 type="password" id="password" i18n-placeholder placeholder="Your password" autocomplete="off"
28 formControlName="password" [ngClass]="{ 'input-error': formErrors['password'] }" class="form-control" 29 formControlName="password" [ngClass]="{ 'input-error': formErrors['password'] }" class="form-control"
diff --git a/client/src/app/+my-account/my-account-settings/my-account-settings.component.html b/client/src/app/+my-account/my-account-settings/my-account-settings.component.html
index f1c466545..b4e4d29f0 100644
--- a/client/src/app/+my-account/my-account-settings/my-account-settings.component.html
+++ b/client/src/app/+my-account/my-account-settings/my-account-settings.component.html
@@ -58,7 +58,7 @@
58 </div> 58 </div>
59</div> 59</div>
60 60
61<div class="form-row mt-5"> <!-- password grid --> 61<div class="form-row mt-5" *ngIf="user.pluginAuth === null"> <!-- password grid -->
62 <div class="form-group col-12 col-lg-4 col-xl-3"> 62 <div class="form-group col-12 col-lg-4 col-xl-3">
63 <div i18n class="account-title">PASSWORD</div> 63 <div i18n class="account-title">PASSWORD</div>
64 </div> 64 </div>
diff --git a/client/src/app/header/header.component.scss b/client/src/app/header/header.component.scss
index 91b390773..1e4ce2c56 100644
--- a/client/src/app/header/header.component.scss
+++ b/client/src/app/header/header.component.scss
@@ -10,7 +10,6 @@ my-search-typeahead {
10 @include orange-button; 10 @include orange-button;
11 @include button-with-icon(22px, 3px, -1px); 11 @include button-with-icon(22px, 3px, -1px);
12 12
13 color: var(--mainBackgroundColor) !important;
14 margin-right: 25px; 13 margin-right: 25px;
15 14
16 @media screen and (max-width: 600px) { 15 @media screen and (max-width: 600px) {
diff --git a/client/src/app/shared/forms/markdown-textarea.component.scss b/client/src/app/shared/forms/markdown-textarea.component.scss
index 8e5739e45..16f319587 100644
--- a/client/src/app/shared/forms/markdown-textarea.component.scss
+++ b/client/src/app/shared/forms/markdown-textarea.component.scss
@@ -14,7 +14,8 @@ $input-border-radius: 3px;
14 textarea { 14 textarea {
15 @include peertube-textarea(100%, 150px); 15 @include peertube-textarea(100%, 150px);
16 16
17 background-color: var(--textareaBackgroundColor); 17 background-color: var(--markdownTextareaBackgroundColor);
18
18 font-family: monospace; 19 font-family: monospace;
19 font-size: 13px; 20 font-size: 13px;
20 border-bottom: none; 21 border-bottom: none;
diff --git a/client/src/app/shared/misc/peertube-web-storage.ts b/client/src/app/shared/misc/peertube-web-storage.ts
index fff209678..6a152dd98 100644
--- a/client/src/app/shared/misc/peertube-web-storage.ts
+++ b/client/src/app/shared/misc/peertube-web-storage.ts
@@ -47,26 +47,32 @@ try {
47 peertubeLocalStorage = localStorage 47 peertubeLocalStorage = localStorage
48 peertubeSessionStorage = sessionStorage 48 peertubeSessionStorage = sessionStorage
49} catch (err) { 49} catch (err) {
50 const instance = new MemoryStorage() 50 const instanceLocalStorage = new MemoryStorage()
51 const instanceSessionStorage = new MemoryStorage()
51 52
52 peertubeLocalStorage = sessionStorage = new Proxy(instance, { 53 function proxify (instance: MemoryStorage) {
53 set: function (obj, prop: string | number, value) { 54 return new Proxy(instance, {
54 if (MemoryStorage.prototype.hasOwnProperty(prop)) { 55 set: function (obj, prop: string | number, value) {
55 instance[prop] = value 56 if (MemoryStorage.prototype.hasOwnProperty(prop)) {
56 } else { 57 instance[prop] = value
57 instance.setItem(prop, value) 58 } else {
59 instance.setItem(prop, value)
60 }
61 return true
62 },
63 get: function (target, name: string | number) {
64 if (MemoryStorage.prototype.hasOwnProperty(name)) {
65 return instance[name]
66 }
67 if (valuesMap.has(name)) {
68 return instance.getItem(name)
69 }
58 } 70 }
59 return true 71 })
60 }, 72 }
61 get: function (target, name: string | number) { 73
62 if (MemoryStorage.prototype.hasOwnProperty(name)) { 74 peertubeLocalStorage = proxify(instanceLocalStorage)
63 return instance[name] 75 peertubeSessionStorage = proxify(instanceSessionStorage)
64 }
65 if (valuesMap.has(name)) {
66 return instance.getItem(name)
67 }
68 }
69 })
70} 76}
71 77
72export { 78export {
diff --git a/client/src/app/videos/+video-watch/comment/video-comments.component.html b/client/src/app/videos/+video-watch/comment/video-comments.component.html
index a21042f09..affbd4793 100644
--- a/client/src/app/videos/+video-watch/comment/video-comments.component.html
+++ b/client/src/app/videos/+video-watch/comment/video-comments.component.html
@@ -12,10 +12,10 @@
12 <my-feed [syndicationItems]="syndicationItems"></my-feed> 12 <my-feed [syndicationItems]="syndicationItems"></my-feed>
13 13
14 <div ngbDropdown class="d-inline-block ml-4"> 14 <div ngbDropdown class="d-inline-block ml-4">
15 <button class="btn btn-sm btn-outline-secondary" id="dropdownSortComments" ngbDropdownToggle i18n> 15 <button class="btn btn-sm btn-outline-secondary" id="dropdown-sort-comments" ngbDropdownToggle i18n>
16 SORT BY 16 SORT BY
17 </button> 17 </button>
18 <div ngbDropdownMenu aria-labelledby="dropdownSortComments"> 18 <div ngbDropdownMenu aria-labelledby="dropdown-sort-comments">
19 <button (click)="handleSortChange('-createdAt')" ngbDropdownItem i18n>Most recent first (default)</button> 19 <button (click)="handleSortChange('-createdAt')" ngbDropdownItem i18n>Most recent first (default)</button>
20 <button (click)="handleSortChange('-totalReplies')" ngbDropdownItem i18n>Most replies first</button> 20 <button (click)="handleSortChange('-totalReplies')" ngbDropdownItem i18n>Most replies first</button>
21 </div> 21 </div>
@@ -72,7 +72,7 @@
72 > 72 >
73 <div *ngIf="comment.totalReplies !== 0 && !threadComments[comment.id]" (click)="viewReplies(comment.id)" class="view-replies mb-2"> 73 <div *ngIf="comment.totalReplies !== 0 && !threadComments[comment.id]" (click)="viewReplies(comment.id)" class="view-replies mb-2">
74 <span class="glyphicon glyphicon-menu-down"></span> 74 <span class="glyphicon glyphicon-menu-down"></span>
75 75
76 <ng-container *ngIf="comment.totalRepliesFromVideoAuthor > 0; then hasAuthorComments; else noAuthorComments"></ng-container> 76 <ng-container *ngIf="comment.totalRepliesFromVideoAuthor > 0; then hasAuthorComments; else noAuthorComments"></ng-container>
77 <ng-template #hasAuthorComments> 77 <ng-template #hasAuthorComments>
78 <ng-container *ngIf="comment.totalReplies !== comment.totalRepliesFromVideoAuthor; else onlyAuthorComments" i18n> 78 <ng-container *ngIf="comment.totalReplies !== comment.totalRepliesFromVideoAuthor; else onlyAuthorComments" i18n>
@@ -83,7 +83,7 @@
83 </ng-template> 83 </ng-template>
84 </ng-template> 84 </ng-template>
85 <ng-template i18n #noAuthorComments>View {{ comment.totalReplies }} replies</ng-template> 85 <ng-template i18n #noAuthorComments>View {{ comment.totalReplies }} replies</ng-template>
86 86
87 <my-small-loader class="comment-thread-loading ml-1" [loading]="threadLoading[comment.id]"></my-small-loader> 87 <my-small-loader class="comment-thread-loading ml-1" [loading]="threadLoading[comment.id]"></my-small-loader>
88 </div> 88 </div>
89 </my-video-comment> 89 </my-video-comment>
diff --git a/client/src/app/videos/+video-watch/comment/video-comments.component.scss b/client/src/app/videos/+video-watch/comment/video-comments.component.scss
index 5ed1ac629..df42fae73 100644
--- a/client/src/app/videos/+video-watch/comment/video-comments.component.scss
+++ b/client/src/app/videos/+video-watch/comment/video-comments.component.scss
@@ -21,7 +21,7 @@
21 .title-page { 21 .title-page {
22 margin-right: 0; 22 margin-right: 0;
23 } 23 }
24 24
25 my-feed { 25 my-feed {
26 display: inline-block; 26 display: inline-block;
27 margin-left: 5px; 27 margin-left: 5px;
@@ -33,7 +33,7 @@
33 } 33 }
34} 34}
35 35
36#dropdownSortComments { 36#dropdown-sort-comments {
37 font-weight: 600; 37 font-weight: 600;
38 text-transform: uppercase; 38 text-transform: uppercase;
39 border: none; 39 border: none;