]> git.proxmox.com Git - ceph.git/blob - ceph/src/pybind/mgr/dashboard/frontend/src/app/ceph/block/rbd-configuration-form/rbd-configuration-form.component.html
130aa32866c146d0431d525ff7c66726e8b53023
[ceph.git] / ceph / src / pybind / mgr / dashboard / frontend / src / app / ceph / block / rbd-configuration-form / rbd-configuration-form.component.html
1 <fieldset #cfgFormGroup
2 [formGroup]="form.get('configuration')">
3 <legend i18n>RBD Configuration</legend>
4
5 <div *ngFor="let section of rbdConfigurationService.sections"
6 class="col-12">
7 <h4 class="cd-header">
8 <span (click)="toggleSectionVisibility(section.class)"
9 class="collapsible">
10 {{ section.heading }} <i [ngClass]="!sectionVisibility[section.class] ? icons.addCircle : icons.minusCircle"
11 aria-hidden="true"></i>
12 </span>
13 </h4>
14 <div class="{{ section.class }}"
15 [hidden]="!sectionVisibility[section.class]">
16 <div class="form-group row"
17 *ngFor="let option of section.options">
18 <label class="cd-col-form-label"
19 [for]="option.name">{{ option.displayName }}<cd-helper>{{ option.description }}</cd-helper></label>
20
21 <div class="cd-col-form-input {{ section.heading }}">
22 <div class="input-group">
23 <ng-container [ngSwitch]="option.type">
24 <ng-container *ngSwitchCase="configurationType.milliseconds">
25 <input [id]="option.name"
26 [name]="option.name"
27 [formControlName]="option.name"
28 type="text"
29 class="form-control"
30 [ngDataReady]="ngDataReady"
31 cdMilliseconds>
32 </ng-container>
33 <ng-container *ngSwitchCase="configurationType.bps">
34 <input [id]="option.name"
35 [name]="option.name"
36 [formControlName]="option.name"
37 type="text"
38 class="form-control"
39 defaultUnit="b"
40 [ngDataReady]="ngDataReady"
41 cdDimlessBinaryPerSecond>
42 </ng-container>
43 <ng-container *ngSwitchCase="configurationType.iops">
44 <input [id]="option.name"
45 [name]="option.name"
46 [formControlName]="option.name"
47 type="text"
48 class="form-control"
49 [ngDataReady]="ngDataReady"
50 cdIops>
51 </ng-container>
52 </ng-container>
53 <span class="input-group-append">
54 <button class="btn btn-light"
55 type="button"
56 data-toggle="button"
57 [ngClass]="{'active': isDisabled(option.name)}"
58 title="Remove the local configuration value. The parent configuration value will be inherited and used instead."
59 i18n-title
60 (click)="reset(option.name)">
61 <i [ngClass]="[icons.erase]"
62 aria-hidden="true"></i>
63 </button>
64 </span>
65 </div>
66 <span i18n
67 class="invalid-feedback"
68 *ngIf="form.showError('configuration.' + option.name, cfgFormGroup, 'min')">The minimum value is 0</span>
69 </div>
70 </div>
71 </div>
72 </div>
73
74 </fieldset>