diff options
author | Rigel Kent <sendmemail@rigelk.eu> | 2020-03-23 23:43:51 +0100 |
---|---|---|
committer | Rigel Kent <sendmemail@rigelk.eu> | 2020-03-23 23:43:53 +0100 |
commit | 5411da31d1070654e4c4b80ad3ad6889b048a4db (patch) | |
tree | 5a7d09243bac71d27f8007f3dac21d3e8035b773 | |
parent | 5a390259b24cb7a4350a0c95380bd362e4542d83 (diff) | |
download | PeerTube-5411da31d1070654e4c4b80ad3ad6889b048a4db.tar.gz PeerTube-5411da31d1070654e4c4b80ad3ad6889b048a4db.tar.zst PeerTube-5411da31d1070654e4c4b80ad3ad6889b048a4db.zip |
Describe user video settings checkboxes, put emphasis on p2p
Also improve more info links about p2p and privacy in PeerTube,
present in the privacy concern notice and in the video settings.
10 files changed, 58 insertions, 16 deletions
diff --git a/client/src/app/+about/about-peertube/about-peertube.component.html b/client/src/app/+about/about-peertube/about-peertube.component.html index 26a3d4554..e5a8b2097 100644 --- a/client/src/app/+about/about-peertube/about-peertube.component.html +++ b/client/src/app/+about/about-peertube/about-peertube.component.html | |||
@@ -65,8 +65,11 @@ | |||
65 | <div class="privacy-contributors"> | 65 | <div class="privacy-contributors"> |
66 | <my-about-peertube-contributors></my-about-peertube-contributors> | 66 | <my-about-peertube-contributors></my-about-peertube-contributors> |
67 | 67 | ||
68 | <div class="p2p-privacy"> | 68 | <div class="p2p-privacy"> |
69 | <h3 i18n class="section-title">P2P & Privacy</h3> | 69 | <h3 class="section-title"> |
70 | <div class="anchor" id="privacy"></div> <!-- privacy anchor --> | ||
71 | <ng-container i18n>P2P & Privacy</ng-container> | ||
72 | </h3> | ||
70 | 73 | ||
71 | <p i18n> | 74 | <p i18n> |
72 | PeerTube uses the BitTorrent protocol to share bandwidth between users by default to help lower the load on the server, | 75 | PeerTube uses the BitTorrent protocol to share bandwidth between users by default to help lower the load on the server, |
@@ -95,7 +98,7 @@ | |||
95 | <li i18n> | 98 | <li i18n> |
96 | For each request sent, the tracker returns random peers at a limited number. | 99 | For each request sent, the tracker returns random peers at a limited number. |
97 | For instance, if there are 1000 peers in the swarm and the tracker sends only 20 peers for each request, there must be at least 50 | 100 | For instance, if there are 1000 peers in the swarm and the tracker sends only 20 peers for each request, there must be at least 50 |
98 | requests sent to know every peers in the swarm | 101 | requests sent to know every peer in the swarm |
99 | </li> | 102 | </li> |
100 | 103 | ||
101 | <li i18n> | 104 | <li i18n> |
diff --git a/client/src/app/+about/about-peertube/about-peertube.component.ts b/client/src/app/+about/about-peertube/about-peertube.component.ts index 64fd30837..98c5f93c3 100644 --- a/client/src/app/+about/about-peertube/about-peertube.component.ts +++ b/client/src/app/+about/about-peertube/about-peertube.component.ts | |||
@@ -1,4 +1,5 @@ | |||
1 | import { Component } from '@angular/core' | 1 | import { Component, AfterViewChecked } from '@angular/core' |
2 | import { ViewportScroller } from '@angular/common' | ||
2 | 3 | ||
3 | @Component({ | 4 | @Component({ |
4 | selector: 'my-about-peertube', | 5 | selector: 'my-about-peertube', |
@@ -6,5 +7,12 @@ import { Component } from '@angular/core' | |||
6 | styleUrls: [ './about-peertube.component.scss' ] | 7 | styleUrls: [ './about-peertube.component.scss' ] |
7 | }) | 8 | }) |
8 | 9 | ||
9 | export class AboutPeertubeComponent { | 10 | export class AboutPeertubeComponent implements AfterViewChecked { |
11 | constructor ( | ||
12 | private viewportScroller: ViewportScroller | ||
13 | ) {} | ||
14 | |||
15 | ngAfterViewChecked () { | ||
16 | if (window.location.hash) this.viewportScroller.scrollToAnchor(window.location.hash.replace('#', '')) | ||
17 | } | ||
10 | } | 18 | } |
diff --git a/client/src/app/+my-account/my-account-settings/my-account-danger-zone/my-account-danger-zone.component.html b/client/src/app/+my-account/my-account-settings/my-account-danger-zone/my-account-danger-zone.component.html index dd9b56585..6e22abeed 100644 --- a/client/src/app/+my-account/my-account-settings/my-account-danger-zone/my-account-danger-zone.component.html +++ b/client/src/app/+my-account/my-account-settings/my-account-danger-zone/my-account-danger-zone.component.html | |||
@@ -1,5 +1,5 @@ | |||
1 | <div class="delete-me"> | 1 | <div class="delete-me"> |
2 | <p i18n>Once you delete your account, there is no going back.</p> | 2 | <p i18n>Once you delete your account, there is no going back. You will be asked to confirm this action.</p> |
3 | 3 | ||
4 | <button (click)="deleteMe()" i18n>Delete your account</button> | 4 | <button (click)="deleteMe()" i18n>Delete your account</button> |
5 | </div> \ No newline at end of file | 5 | </div> |
diff --git a/client/src/app/+my-account/my-account-settings/my-account-danger-zone/my-account-danger-zone.component.scss b/client/src/app/+my-account/my-account-settings/my-account-danger-zone/my-account-danger-zone.component.scss index 0ca310468..7f7806732 100644 --- a/client/src/app/+my-account/my-account-settings/my-account-danger-zone/my-account-danger-zone.component.scss +++ b/client/src/app/+my-account/my-account-settings/my-account-danger-zone/my-account-danger-zone.component.scss | |||
@@ -7,5 +7,6 @@ | |||
7 | button { | 7 | button { |
8 | @include peertube-button; | 8 | @include peertube-button; |
9 | @include grey-button; | 9 | @include grey-button; |
10 | @include disable-outline; | ||
10 | } | 11 | } |
11 | } \ No newline at end of file | 12 | } \ No newline at end of file |
diff --git a/client/src/app/+my-account/my-account-settings/my-account-danger-zone/my-account-danger-zone.component.ts b/client/src/app/+my-account/my-account-settings/my-account-danger-zone/my-account-danger-zone.component.ts index 41021c592..25d862867 100644 --- a/client/src/app/+my-account/my-account-settings/my-account-danger-zone/my-account-danger-zone.component.ts +++ b/client/src/app/+my-account/my-account-settings/my-account-danger-zone/my-account-danger-zone.component.ts | |||
@@ -24,7 +24,7 @@ export class MyAccountDangerZoneComponent { | |||
24 | 24 | ||
25 | async deleteMe () { | 25 | async deleteMe () { |
26 | const res = await this.confirmService.confirmWithInput( | 26 | const res = await this.confirmService.confirmWithInput( |
27 | this.i18n('Are you sure you want to delete your account? This will delete all your data, including channels, videos etc.'), | 27 | this.i18n('Are you sure you want to delete your account? This will delete all your data, including channels, videos and comments. Content cached by other servers and other third-parties might make longer to be deleted.'), |
28 | this.i18n('Type your username to confirm'), | 28 | this.i18n('Type your username to confirm'), |
29 | this.user.username, | 29 | this.user.username, |
30 | this.i18n('Delete your account'), | 30 | this.i18n('Delete your account'), |
diff --git a/client/src/app/+my-account/my-account-settings/my-account-video-settings/my-account-video-settings.component.html b/client/src/app/+my-account/my-account-settings/my-account-video-settings/my-account-video-settings.component.html index f17829127..7f4437b19 100644 --- a/client/src/app/+my-account/my-account-settings/my-account-video-settings/my-account-video-settings.component.html +++ b/client/src/app/+my-account/my-account-settings/my-account-video-settings/my-account-video-settings.component.html | |||
@@ -39,23 +39,35 @@ | |||
39 | 39 | ||
40 | <div class="form-group"> | 40 | <div class="form-group"> |
41 | <my-peertube-checkbox | 41 | <my-peertube-checkbox |
42 | inputName="webTorrentEnabled" formControlName="webTorrentEnabled" | 42 | inputName="webTorrentEnabled" formControlName="webTorrentEnabled" [recommended]="true" |
43 | i18n-labelText labelText="Use P2P to exchange parts of the video with others" | 43 | i18n-labelText labelText="Help share videos being played" |
44 | ></my-peertube-checkbox> | 44 | > |
45 | <ng-container ngProjectAs="description"> | ||
46 | <span i18n>The <a routerLink="/about/peertube" fragment="privacy">sharing system</a> implies that some technical information about your system (such as a public IP address) can be sent to other peers, but greatly helps to reduce server load.</span> | ||
47 | </ng-container> | ||
48 | </my-peertube-checkbox> | ||
45 | </div> | 49 | </div> |
46 | 50 | ||
47 | <div class="form-group"> | 51 | <div class="form-group"> |
48 | <my-peertube-checkbox | 52 | <my-peertube-checkbox |
49 | inputName="autoPlayVideo" formControlName="autoPlayVideo" | 53 | inputName="autoPlayVideo" formControlName="autoPlayVideo" |
50 | i18n-labelText labelText="Automatically plays video" | 54 | i18n-labelText labelText="Automatically play videos" |
51 | ></my-peertube-checkbox> | 55 | > |
56 | <ng-container ngProjectAs="description"> | ||
57 | <span i18n>When on a video page, directly start playing the video.</span> | ||
58 | </ng-container> | ||
59 | </my-peertube-checkbox> | ||
52 | </div> | 60 | </div> |
53 | 61 | ||
54 | <div class="form-group"> | 62 | <div class="form-group"> |
55 | <my-peertube-checkbox | 63 | <my-peertube-checkbox |
56 | inputName="autoPlayNextVideo" formControlName="autoPlayNextVideo" | 64 | inputName="autoPlayNextVideo" formControlName="autoPlayNextVideo" |
57 | i18n-labelText labelText="Automatically starts playing next video" | 65 | i18n-labelText labelText="Automatically start playing the next video" |
58 | ></my-peertube-checkbox> | 66 | > |
67 | <ng-container ngProjectAs="description"> | ||
68 | <span i18n>When a video ends, follow up with the next suggested video.</span> | ||
69 | </ng-container> | ||
70 | </my-peertube-checkbox> | ||
59 | </div> | 71 | </div> |
60 | 72 | ||
61 | <input *ngIf="!reactiveUpdate" type="submit" i18n-value value="Save" [disabled]="!form.valid"> | 73 | <input *ngIf="!reactiveUpdate" type="submit" i18n-value value="Save" [disabled]="!form.valid"> |
diff --git a/client/src/app/shared/forms/peertube-checkbox.component.html b/client/src/app/shared/forms/peertube-checkbox.component.html index c740d852c..704f3e696 100644 --- a/client/src/app/shared/forms/peertube-checkbox.component.html +++ b/client/src/app/shared/forms/peertube-checkbox.component.html | |||
@@ -29,6 +29,8 @@ | |||
29 | <ng-template *ngTemplateOutlet="helpTemplate"></ng-template> | 29 | <ng-template *ngTemplateOutlet="helpTemplate"></ng-template> |
30 | </ng-template> | 30 | </ng-template> |
31 | </my-help> | 31 | </my-help> |
32 | |||
33 | <div *ngIf="recommended" class="recommended" i18n>Recommended</div> | ||
32 | </div> | 34 | </div> |
33 | 35 | ||
34 | <div class="ml-4 d-flex flex-column"> | 36 | <div class="ml-4 d-flex flex-column"> |
diff --git a/client/src/app/shared/forms/peertube-checkbox.component.scss b/client/src/app/shared/forms/peertube-checkbox.component.scss index 3120509b3..c1233e8a5 100644 --- a/client/src/app/shared/forms/peertube-checkbox.component.scss +++ b/client/src/app/shared/forms/peertube-checkbox.component.scss | |||
@@ -34,4 +34,19 @@ | |||
34 | .wrapper:empty { | 34 | .wrapper:empty { |
35 | display: none; | 35 | display: none; |
36 | } | 36 | } |
37 | |||
38 | .recommended { | ||
39 | margin-left: .5rem; | ||
40 | align-self: baseline; | ||
41 | display: inline-block; | ||
42 | padding: 4px 6px; | ||
43 | cursor: default; | ||
44 | border-radius: 3px; | ||
45 | font-size: 12px; | ||
46 | line-height: 12px; | ||
47 | font-weight: 500; | ||
48 | color: var(--inputPlaceholderColor); | ||
49 | background-color: rgba(217,225,232,.1); | ||
50 | border: 1px solid rgba(217,225,232,.5); | ||
51 | } | ||
37 | } \ No newline at end of file | 52 | } \ No newline at end of file |
diff --git a/client/src/app/shared/forms/peertube-checkbox.component.ts b/client/src/app/shared/forms/peertube-checkbox.component.ts index cb7ec8eda..89e79fecd 100644 --- a/client/src/app/shared/forms/peertube-checkbox.component.ts +++ b/client/src/app/shared/forms/peertube-checkbox.component.ts | |||
@@ -21,6 +21,7 @@ export class PeertubeCheckboxComponent implements ControlValueAccessor, AfterCon | |||
21 | @Input() labelInnerHTML: string | 21 | @Input() labelInnerHTML: string |
22 | @Input() helpPlacement = 'top auto' | 22 | @Input() helpPlacement = 'top auto' |
23 | @Input() disabled = false | 23 | @Input() disabled = false |
24 | @Input() recommended = false | ||
24 | 25 | ||
25 | @ContentChildren(PeerTubeTemplateDirective) templates: QueryList<PeerTubeTemplateDirective<'label' | 'help'>> | 26 | @ContentChildren(PeerTubeTemplateDirective) templates: QueryList<PeerTubeTemplateDirective<'label' | 'help'>> |
26 | 27 | ||
diff --git a/client/src/app/videos/+video-watch/video-watch.component.html b/client/src/app/videos/+video-watch/video-watch.component.html index 307143319..0244860dd 100644 --- a/client/src/app/videos/+video-watch/video-watch.component.html +++ b/client/src/app/videos/+video-watch/video-watch.component.html | |||
@@ -263,7 +263,7 @@ | |||
263 | the sharing system used for this video implies that some technical information about your system (such as a public IP address) can be sent to other peers. | 263 | the sharing system used for this video implies that some technical information about your system (such as a public IP address) can be sent to other peers. |
264 | </ng-container> | 264 | </ng-container> |
265 | </span> | 265 | </span> |
266 | <a i18n i18n-title title="Get more information" target="_blank" rel="noopener noreferrer" href="/about/peertube">More information</a> | 266 | <a i18n i18n-title title="Get more information" target="_blank" rel="noopener noreferrer" href="/about/peertube#privacy">More information</a> |
267 | </div> | 267 | </div> |
268 | 268 | ||
269 | <div i18n class="privacy-concerns-button privacy-concerns-okay" (click)="acceptedPrivacyConcern()"> | 269 | <div i18n class="privacy-concerns-button privacy-concerns-okay" (click)="acceptedPrivacyConcern()"> |