]>
Commit | Line | Data |
---|---|---|
1 | <div *ngIf="!isUploadingVideo" class="upload-video-container"> | |
2 | <div class="first-step-block"> | |
3 | <my-global-icon class="upload-icon" iconName="upload"></my-global-icon> | |
4 | ||
5 | <div class="button-file"> | |
6 | <span i18n>Select the file to upload</span> | |
7 | <input #videofileInput type="file" name="videofile" id="videofile" [accept]="videoExtensions" (change)="fileChange()" /> | |
8 | </div> | |
9 | <span class="button-file-extension">({{ videoExtensions }})</span> | |
10 | ||
11 | <div class="form-group form-group-channel"> | |
12 | <label i18n for="first-step-channel">Channel</label> | |
13 | <div class="peertube-select-container"> | |
14 | <select id="first-step-channel" [(ngModel)]="firstStepChannelId"> | |
15 | <option *ngFor="let channel of userVideoChannels" [value]="channel.id">{{ channel.label }}</option> | |
16 | </select> | |
17 | </div> | |
18 | </div> | |
19 | ||
20 | <div class="form-group"> | |
21 | <label i18n for="first-step-privacy">Privacy</label> | |
22 | <div class="peertube-select-container"> | |
23 | <select id="first-step-privacy" [(ngModel)]="firstStepPrivacyId"> | |
24 | <option *ngFor="let privacy of videoPrivacies" [value]="privacy.id">{{ privacy.label }}</option> | |
25 | <option i18n [value]="SPECIAL_SCHEDULED_PRIVACY">Scheduled</option> | |
26 | </select> | |
27 | </div> | |
28 | </div> | |
29 | ||
30 | <ng-container *ngIf="isUploadingAudioFile"> | |
31 | <div class="form-group audio-preview"> | |
32 | <label i18n for="previewfileUpload">Video background image</label> | |
33 | ||
34 | <div i18n class="audio-image-info"> | |
35 | Image that will be merged with your audio file. | |
36 | <br /> | |
37 | The chosen image will be definitive and cannot be modified. | |
38 | </div> | |
39 | ||
40 | <my-preview-upload | |
41 | i18n-inputLabel inputLabel="Edit" inputName="previewfileUpload" [(ngModel)]="previewfileUpload" | |
42 | previewWidth="360px" previewHeight="200px" | |
43 | ></my-preview-upload> | |
44 | </div> | |
45 | ||
46 | <div class="form-group upload-audio-button"> | |
47 | <my-button className="orange-button" i18n-label [label]="getAudioUploadLabel()" icon="upload" (click)="uploadFirstStep(true)"></my-button> | |
48 | </div> | |
49 | </ng-container> | |
50 | </div> | |
51 | </div> | |
52 | ||
53 | <div *ngIf="isUploadingVideo && !error" class="upload-progress-cancel"> | |
54 | <p-progressBar | |
55 | [value]="videoUploadPercents" | |
56 | [ngClass]="{ processing: videoUploadPercents === 100 && videoUploaded === false }" | |
57 | ></p-progressBar> | |
58 | <input *ngIf="videoUploaded === false" type="button" value="Cancel" (click)="cancelUpload()" /> | |
59 | </div> | |
60 | ||
61 | <div *ngIf="error" class="alert alert-danger"> | |
62 | <div i18n>Sorry, but something went wrong</div> | |
63 | {{ error }} | |
64 | </div> | |
65 | ||
66 | <div *ngIf="videoUploaded && !error" class="alert alert-info" i18n> | |
67 | Congratulations! Your video is now available in your private library. | |
68 | </div> | |
69 | ||
70 | <!-- Hidden because we want to load the component --> | |
71 | <form [hidden]="!isUploadingVideo" novalidate [formGroup]="form"> | |
72 | <my-video-edit | |
73 | [form]="form" [formErrors]="formErrors" [videoCaptions]="videoCaptions" | |
74 | [validationMessages]="validationMessages" [videoPrivacies]="explainedVideoPrivacies" [userVideoChannels]="userVideoChannels" | |
75 | [waitTranscodingEnabled]="waitTranscodingEnabled" | |
76 | ></my-video-edit> | |
77 | ||
78 | <div class="submit-container"> | |
79 | <div i18n *ngIf="videoUploaded === false" class="message-submit">Publish will be available when upload is finished</div> | |
80 | ||
81 | <div class="submit-button" | |
82 | (click)="updateSecondStep()" | |
83 | [ngClass]="{ disabled: isPublishingButtonDisabled() }" | |
84 | > | |
85 | <my-global-icon iconName="validate"></my-global-icon> | |
86 | <input [disabled]="isPublishingButtonDisabled()" type="button" i18n-value value="Publish" /> | |
87 | </div> | |
88 | </div> | |
89 | </form> |