]> git.immae.eu Git - github/Chocobozzz/PeerTube.git/blob - client/src/app/shared/shared-forms/dynamic-form-field.component.html
Plugins can register html/select settings
[github/Chocobozzz/PeerTube.git] / client / src / app / shared / shared-forms / dynamic-form-field.component.html
1 <div [formGroup]="form">
2 <label *ngIf="setting.label" [attr.for]="setting.name" [innerHTML]="setting.label"></label>
3
4 <div *ngIf="setting.descriptionHTML" class="label-small-info" [innerHTML]="setting.descriptionHTML"></div>
5
6 <input *ngIf="setting.type === 'input'" type="text" [id]="setting.name" [formControlName]="setting.name" />
7
8 <div *ngIf="setting.type === 'select'" class="peertube-select-container">
9 <select [id]="setting.name" [formControlName]="setting.name" class="form-control">
10 <option *ngFor="let option of setting.options" [value]="option.value">{{ option.label }}</option>
11 </select>
12 </div>
13
14 <my-input-toggle-hidden *ngIf="setting.type === 'input-password'" [formControlName]="setting.name" [inputId]="setting.name"></my-input-toggle-hidden>
15
16 <textarea *ngIf="setting.type === 'input-textarea'" type="text" [id]="setting.name" [formControlName]="setting.name"></textarea>
17
18 <my-help *ngIf="setting.type === 'markdown-text'" helpType="markdownText"></my-help>
19
20 <my-help *ngIf="setting.type === 'markdown-enhanced'" helpType="markdownEnhanced"></my-help>
21
22 <my-markdown-textarea
23 *ngIf="setting.type === 'markdown-text'"
24 markdownType="text" [id]="setting.name" [formControlName]="setting.name" textareaWidth="500px"
25 [classes]="{ 'input-error': formErrors['settings.name'] }"
26 ></my-markdown-textarea>
27
28 <my-markdown-textarea
29 *ngIf="setting.type === 'markdown-enhanced'"
30 markdownType="enhanced" [id]="setting.name" [formControlName]="setting.name" textareaWidth="500px"
31 [classes]="{ 'input-error': formErrors['settings.name'] }"
32 ></my-markdown-textarea>
33
34 <my-peertube-checkbox
35 *ngIf="setting.type === 'input-checkbox'"
36 [inputName]="setting.name"
37 [formControlName]="setting.name"
38 [labelInnerHTML]="setting.label"
39 ></my-peertube-checkbox>
40
41 <div *ngIf="setting.type === 'html'" [innerHTML]="setting.html"></div>
42
43 <div *ngIf="formErrors[setting.name]" class="form-error">
44 {{ formErrors[setting.name] }}
45 </div>
46
47 </div>