]>
Commit | Line | Data |
---|---|---|
dc8bc31b C |
1 | <h3>Upload a video</h3> |
2 | ||
1cdb5c0f C |
3 | <div *ngIf="error" class="alert alert-danger">{{ error }}</div> |
4 | ||
4b2f33f3 | 5 | <form novalidate (ngSubmit)="upload()" [formGroup]="form"> |
dc8bc31b | 6 | <div class="form-group"> |
e822fdae | 7 | <label for="name">Name</label> |
dc8bc31b | 8 | <input |
4b2f33f3 C |
9 | type="text" class="form-control" id="name" |
10 | formControlName="name" | |
dc8bc31b | 11 | > |
4b2f33f3 C |
12 | <div *ngIf="formErrors.name" class="alert alert-danger"> |
13 | {{ formErrors.name }} | |
dc8bc31b C |
14 | </div> |
15 | </div> | |
16 | ||
763bed9b | 17 | <div class="form-group"> |
e822fdae C |
18 | <label for="tags">Tags</label> |
19 | <input | |
4b2f33f3 C |
20 | type="text" class="form-control" id="currentTag" |
21 | formControlName="currentTag" (keyup)="onTagKeyPress($event)" | |
e822fdae | 22 | > |
4b2f33f3 C |
23 | <div *ngIf="formErrors.currentTag" class="alert alert-danger"> |
24 | {{ formErrors.currentTag }} | |
e822fdae C |
25 | </div> |
26 | </div> | |
27 | ||
28 | <div class="tags"> | |
4b2f33f3 | 29 | <div class="label label-primary tag" *ngFor="let tag of tags"> |
e822fdae C |
30 | {{ tag }} |
31 | <span class="remove" (click)="removeTag(tag)">x</span> | |
32 | </div> | |
33 | </div> | |
34 | ||
35 | <div class="form-group"> | |
36 | <label for="videofile">File</label> | |
37 | <div class="btn btn-default btn-file" [ngClass]="{ 'disabled': filename !== null }" > | |
763bed9b | 38 | <span>Select the video...</span> |
e822fdae C |
39 | <input |
40 | type="file" name="videofile" id="videofile" | |
41 | ng2FileSelect [uploader]="uploader" [disabled]="filename !== null" | |
42 | > | |
763bed9b | 43 | </div> |
e822fdae | 44 | </div> |
dc8bc31b | 45 | |
e822fdae C |
46 | <div class="file-to-upload"> |
47 | <div class="file" *ngIf="uploader.queue.length > 0"> | |
48 | <span class="filename">{{ filename }}</span> | |
49 | <span class="glyphicon glyphicon-remove" (click)="removeFile()"></span> | |
50 | </div> | |
763bed9b | 51 | </div> |
dc8bc31b C |
52 | |
53 | <div class="form-group"> | |
54 | <label for="description">Description</label> | |
55 | <textarea | |
4b2f33f3 C |
56 | id="description" class="form-control" placeholder="Description..." |
57 | formControlName="description" | |
dc8bc31b C |
58 | > |
59 | </textarea> | |
4b2f33f3 C |
60 | <div *ngIf="formErrors.description" class="alert alert-danger"> |
61 | {{ formErrors.description }} | |
dc8bc31b C |
62 | </div> |
63 | </div> | |
64 | ||
e822fdae C |
65 | <div class="progress"> |
66 | <progressbar [value]="uploader.progress" max="100"></progressbar> | |
dc8bc31b C |
67 | </div> |
68 | ||
e822fdae C |
69 | <div class="form-group"> |
70 | <input | |
71 | type="submit" value="Upload" class="btn btn-default form-control" [title]="getInvalidFieldsTitle()" | |
4b2f33f3 | 72 | [disabled]="!form.valid || tags.length === 0 || filename === null" |
e822fdae C |
73 | > |
74 | </div> | |
dc8bc31b | 75 | </form> |