aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorNataly Rocha <nata_r10@hotmail.com>2021-10-22 08:11:45 -0500
committerGitHub <noreply@github.com>2021-10-22 15:11:45 +0200
commit382258676c3ab83f9cebfc4e378ab955cd8fd9ff (patch)
tree46e54635aa42597a0ff527f065ae1fbd31e81441
parentd1bfbdeb203b0e4f37e9468861c690171156ee29 (diff)
downloadPeerTube-382258676c3ab83f9cebfc4e378ab955cd8fd9ff.tar.gz
PeerTube-382258676c3ab83f9cebfc4e378ab955cd8fd9ff.tar.zst
PeerTube-382258676c3ab83f9cebfc4e378ab955cd8fd9ff.zip
Add warning and update privacy on share playlist (#4469)
* add warning and update privacy on share * update playlist display name on toast * change privacy update to link * remove conditional * Improve share private warning styling Co-authored-by: Chocobozzz <me@florianbigard.com>
-rw-r--r--client/src/app/shared/shared-share-modal/video-share.component.html17
-rw-r--r--client/src/app/shared/shared-share-modal/video-share.component.scss6
-rw-r--r--client/src/app/shared/shared-share-modal/video-share.component.ts10
3 files changed, 32 insertions, 1 deletions
diff --git a/client/src/app/shared/shared-share-modal/video-share.component.html b/client/src/app/shared/shared-share-modal/video-share.component.html
index bcb1db4c4..059699d3b 100644
--- a/client/src/app/shared/shared-share-modal/video-share.component.html
+++ b/client/src/app/shared/shared-share-modal/video-share.component.html
@@ -10,6 +10,15 @@
10 <div class="playlist" *ngIf="playlist"> 10 <div class="playlist" *ngIf="playlist">
11 <div class="title-page title-page-single" i18n *ngIf="video">Share the playlist</div> 11 <div class="title-page title-page-single" i18n *ngIf="video">Share the playlist</div>
12 12
13
14 <div *ngIf="isPrivatePlaylist()" class="alert-private alert alert-warning">
15 <div i18n>This playlist is private so you won't be able to share it with external users</div>
16
17 <a i18n class="peertube-button-link orange-button" [routerLink]="[ '/my-library/video-playlists/update', playlist.uuid ]" target="_blank" rel="noopener noreferrer">
18 Update playlist privacy
19 </a>
20 </div>
21
13 <div ngbNav #nav="ngbNav" class="nav-tabs" [(activeId)]="activePlaylistId"> 22 <div ngbNav #nav="ngbNav" class="nav-tabs" [(activeId)]="activePlaylistId">
14 23
15 <ng-container ngbNavItem="url"> 24 <ng-container ngbNavItem="url">
@@ -65,6 +74,14 @@
65 <div class="video" *ngIf="video"> 74 <div class="video" *ngIf="video">
66 <div class="title-page title-page-single" *ngIf="playlist" i18n>Share the video</div> 75 <div class="title-page title-page-single" *ngIf="playlist" i18n>Share the video</div>
67 76
77 <div *ngIf="isPrivateVideo()" class="alert-private alert alert-warning">
78 <div i18n>This video is private so you won't be able to share it with external users</div>
79
80 <a i18n class="peertube-button-link orange-button" [routerLink]="[ '/videos/', 'update', video.shortUUID ]" target="_blank" rel="noopener noreferrer">
81 Update video privacy
82 </a>
83 </div>
84
68 <div ngbNav #nav="ngbNav" class="nav-tabs" [(activeId)]="activeVideoId"> 85 <div ngbNav #nav="ngbNav" class="nav-tabs" [(activeId)]="activeVideoId">
69 86
70 <ng-container ngbNavItem="url"> 87 <ng-container ngbNavItem="url">
diff --git a/client/src/app/shared/shared-share-modal/video-share.component.scss b/client/src/app/shared/shared-share-modal/video-share.component.scss
index 98aab8fe8..ac3b841da 100644
--- a/client/src/app/shared/shared-share-modal/video-share.component.scss
+++ b/client/src/app/shared/shared-share-modal/video-share.component.scss
@@ -81,3 +81,9 @@ my-input-toggle-hidden {
81 } 81 }
82 } 82 }
83} 83}
84
85.alert-private {
86 display: flex;
87 align-items: center;
88 justify-content: space-between;
89}
diff --git a/client/src/app/shared/shared-share-modal/video-share.component.ts b/client/src/app/shared/shared-share-modal/video-share.component.ts
index 70890e551..e6e4bd147 100644
--- a/client/src/app/shared/shared-share-modal/video-share.component.ts
+++ b/client/src/app/shared/shared-share-modal/video-share.component.ts
@@ -3,7 +3,7 @@ import { VideoDetails } from '@app/shared/shared-main'
3import { VideoPlaylist } from '@app/shared/shared-video-playlist' 3import { VideoPlaylist } from '@app/shared/shared-video-playlist'
4import { NgbModal } from '@ng-bootstrap/ng-bootstrap' 4import { NgbModal } from '@ng-bootstrap/ng-bootstrap'
5import { buildPlaylistLink, buildVideoLink, decoratePlaylistLink, decorateVideoLink } from '@shared/core-utils' 5import { buildPlaylistLink, buildVideoLink, decoratePlaylistLink, decorateVideoLink } from '@shared/core-utils'
6import { VideoCaption } from '@shared/models' 6import { VideoCaption, VideoPlaylistPrivacy, VideoPrivacy } from '@shared/models'
7import { buildVideoOrPlaylistEmbed } from '../../../assets/player/utils' 7import { buildVideoOrPlaylistEmbed } from '../../../assets/player/utils'
8 8
9type Customizations = { 9type Customizations = {
@@ -126,6 +126,14 @@ export class VideoShareComponent {
126 return this.video.isLocal 126 return this.video.isLocal
127 } 127 }
128 128
129 isPrivateVideo () {
130 return this.video.privacy.id === VideoPrivacy.PRIVATE
131 }
132
133 isPrivatePlaylist () {
134 return this.playlist.privacy.id === VideoPlaylistPrivacy.PRIVATE
135 }
136
129 private getPlaylistOptions (baseUrl?: string) { 137 private getPlaylistOptions (baseUrl?: string) {
130 return { 138 return {
131 baseUrl, 139 baseUrl,