1 <nav aria-label=
"breadcrumb">
2 <ol class=
"breadcrumb">
3 <li class=
"breadcrumb-item">
4 <a routerLink=
"/my-library/video-playlists" i18n
>My Playlists
</a>
7 <ng-container *
ngIf=
"isCreation()">
8 <li class=
"breadcrumb-item active" i18n
>Create
</li>
10 <ng-container *
ngIf=
"!isCreation()">
11 <li class=
"breadcrumb-item active" i18n
>Edit
</li>
12 <li class=
"breadcrumb-item active" aria-current=
"page">
13 <a *
ngIf=
"videoPlaylistToUpdate" [routerLink]=
"[ '/my-library/video-playlists/update', videoPlaylistToUpdate?.uuid ]">{{ videoPlaylistToUpdate?.displayName }}
</a>
19 <div *
ngIf=
"error" class=
"alert alert-danger">{{ error }}
</div>
21 <form role=
"form" (ngSubmit)=
"formValidated()" [formGroup]=
"form">
23 <div class=
"form-row"> <!-- playlist grid -->
24 <div class=
"form-group col-12 col-lg-4 col-xl-3">
25 <div *
ngIf=
"isCreation()" class=
"video-playlist-title" i18n
>NEW PLAYLIST
</div>
26 <div *
ngIf=
"!isCreation() && videoPlaylistToUpdate" class=
"video-playlist-title" i18n
>PLAYLIST
</div>
29 <div class=
"form-group col-12 col-lg-8 col-xl-9">
31 <div class=
"col-md-12 col-xl-6">
32 <div class=
"form-group">
33 <label i18n
for=
"displayName">Display name
</label>
35 type=
"text" id=
"displayName" class=
"form-control"
36 formControlName=
"displayName" [ngClass]=
"{ 'input-error': formErrors['displayName'] }"
38 <div *
ngIf=
"formErrors['displayName']" class=
"form-error">
39 {{ formErrors['displayName'] }}
43 <div class=
"form-group">
44 <label i18n
for=
"description">Description
</label>
46 id=
"description" formControlName=
"description"
47 class=
"form-control" [ngClass]=
"{ 'input-error': formErrors['description'] }"
49 <div *
ngIf=
"formErrors.description" class=
"form-error">
50 {{ formErrors.description }}
55 <div class=
"col-md-12 col-xl-6">
56 <div class=
"form-group">
57 <label i18n
for=
"privacy">Privacy
</label>
58 <div class=
"peertube-select-container">
59 <select id=
"privacy" formControlName=
"privacy" class=
"form-control">
60 <option *
ngFor=
"let privacy of videoPlaylistPrivacies" [value]=
"privacy.id">{{ privacy.label }}
</option>
64 <div *
ngIf=
"formErrors.privacy" class=
"form-error">
65 {{ formErrors.privacy }}
69 <div class=
"form-group">
70 <label i18n
>Channel
</label>
73 labelForId=
"videoChannelIdl" [items]=
"userVideoChannels" formControlName=
"videoChannelId"
76 <div *
ngIf=
"formErrors['videoChannelId']" class=
"form-error">
77 {{ formErrors['videoChannelId'] }}
81 <div class=
"form-group">
82 <label i18n
>Playlist thumbnail
</label>
85 i18n-inputLabel
inputLabel=
"Edit" inputName=
"thumbnailfile" formControlName=
"thumbnailfile"
86 previewWidth=
"223px" previewHeight=
"122px"
91 <div class=
"form-row"> <!-- submit placement block -->
92 <div class=
"col-md-7 col-xl-5"></div>
93 <div class=
"col-md-5 col-xl-5 d-inline-flex">
94 <input type=
"submit" value=
"{{ getFormButtonTitle() }}" [disabled]=
"!form.valid">