]>
Commit | Line | Data |
---|---|---|
1 | <nav aria-label="breadcrumb"> | |
2 | <ol class="breadcrumb"> | |
3 | <li class="breadcrumb-item"> | |
4 | <a routerLink="/my-library/video-channels" i18n>My Channels</a> | |
5 | </li> | |
6 | ||
7 | <ng-container *ngIf="isCreation()"> | |
8 | <li class="breadcrumb-item active" i18n>Create</li> | |
9 | </ng-container> | |
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="videoChannel" [routerLink]="[ '/my-library/video-channels/update', videoChannel?.nameWithHost ]">{{ videoChannel?.displayName }}</a> | |
14 | </li> | |
15 | </ng-container> | |
16 | </ol> | |
17 | </nav> | |
18 | ||
19 | <div *ngIf="error" class="alert alert-danger">{{ error }}</div> | |
20 | ||
21 | <form role="form" (ngSubmit)="formValidated()" [formGroup]="form"> | |
22 | ||
23 | <div class="form-row"> <!-- channel grid --> | |
24 | <div class="form-group col-12 col-lg-4 col-xl-3"> | |
25 | <div *ngIf="isCreation()" class="video-channel-title" i18n>NEW CHANNEL</div> | |
26 | <div *ngIf="!isCreation() && videoChannel" class="video-channel-title" i18n>CHANNEL</div> | |
27 | </div> | |
28 | ||
29 | <div class="form-group col-12 col-lg-8 col-xl-9"> | |
30 | <h6 i18n>Banner image of your channel</h6> | |
31 | ||
32 | <my-actor-banner-edit | |
33 | *ngIf="videoChannel" [previewImage]="isCreation()" | |
34 | [actor]="videoChannel" (bannerChange)="onBannerChange($event)" (bannerDelete)="onBannerDelete()" | |
35 | ></my-actor-banner-edit> | |
36 | ||
37 | <my-actor-avatar-edit | |
38 | *ngIf="videoChannel" [previewImage]="isCreation()" | |
39 | [actor]="videoChannel" (avatarChange)="onAvatarChange($event)" (avatarDelete)="onAvatarDelete()" | |
40 | [displayUsername]="!isCreation()" [displaySubscribers]="!isCreation()" | |
41 | ></my-actor-avatar-edit> | |
42 | ||
43 | <div class="form-group" *ngIf="isCreation()"> | |
44 | <label i18n for="name">Name</label> | |
45 | <div class="input-group"> | |
46 | <input | |
47 | type="text" id="name" i18n-placeholder placeholder="Example: my_channel" | |
48 | formControlName="name" [ngClass]="{ 'input-error': formErrors['name'] }" class="form-control" | |
49 | > | |
50 | <div class="input-group-append"> | |
51 | <span class="input-group-text">@{{ instanceHost }}</span> | |
52 | </div> | |
53 | </div> | |
54 | <div *ngIf="formErrors['name']" class="form-error"> | |
55 | {{ formErrors['name'] }} | |
56 | </div> | |
57 | </div> | |
58 | ||
59 | <div class="form-group"> | |
60 | <label i18n for="display-name">Display name</label> | |
61 | <input | |
62 | type="text" id="display-name" class="form-control" | |
63 | formControlName="display-name" [ngClass]="{ 'input-error': formErrors['display-name'] }" | |
64 | > | |
65 | <div *ngIf="formErrors['display-name']" class="form-error"> | |
66 | {{ formErrors['display-name'] }} | |
67 | </div> | |
68 | </div> | |
69 | ||
70 | <div class="form-group"> | |
71 | <label i18n for="description">Description</label> | |
72 | <textarea | |
73 | id="description" formControlName="description" class="form-control" | |
74 | [ngClass]="{ 'input-error': formErrors['description'] }" | |
75 | ></textarea> | |
76 | <div *ngIf="formErrors.description" class="form-error"> | |
77 | {{ formErrors.description }} | |
78 | </div> | |
79 | </div> | |
80 | ||
81 | <div class="form-group"> | |
82 | <label for="support">Support</label> | |
83 | <my-help | |
84 | helpType="markdownEnhanced" i18n-preHtml preHtml="Short text to tell people how they can support your channel (membership platform...).<br /><br /> | |
85 | When you will upload a video in this channel, the video support field will be automatically filled by this text." | |
86 | ></my-help> | |
87 | <my-markdown-textarea | |
88 | id="support" formControlName="support" textareaMaxWidth="500px" markdownType="enhanced" | |
89 | [classes]="{ 'input-error': formErrors['support'] }" | |
90 | ></my-markdown-textarea> | |
91 | <div *ngIf="formErrors.support" class="form-error"> | |
92 | {{ formErrors.support }} | |
93 | </div> | |
94 | </div> | |
95 | ||
96 | <div class="form-group" *ngIf="isBulkUpdateVideosDisplayed()"> | |
97 | <my-peertube-checkbox | |
98 | inputName="bulkVideosSupportUpdate" formControlName="bulkVideosSupportUpdate" | |
99 | i18n-labelText labelText="Overwrite support field of all videos of this channel" | |
100 | ></my-peertube-checkbox> | |
101 | </div> | |
102 | ||
103 | </div> | |
104 | </div> | |
105 | ||
106 | <div class="form-row"> <!-- submit placement block --> | |
107 | <div class="col-md-7 col-xl-5"></div> | |
108 | <div class="col-md-5 col-xl-5 d-inline-flex"> | |
109 | <input type="submit" value="{{ getFormButtonTitle() }}" [disabled]="!form.valid"> | |
110 | </div> | |
111 | </div> | |
112 | </form> |