1 <div class="modal-header">
2 <h4 i18n="form title|Example: Create Pool@@formTitle"
3 class="modal-title float-left">{{ action | titlecase }} {{ resource | upperFirst }}</h4>
6 class="close float-right"
8 (click)="bsModalRef.hide()">
9 <span aria-hidden="true">×</span>
13 [formGroup]="formGroup"
15 <div class="modal-body">
18 <div class="form-group row"
19 [ngClass]="{':invalid': formGroup.showError('type', frm)}">
20 <label class="col-form-label col-sm-3"
22 <ng-container i18n>Type</ng-container>
23 <span class="required"
27 <div class="col-sm-9">
33 formControlName="type">
36 formControlName="type"
40 *ngIf="types !== null"
41 [ngValue]="null">-- Select a type --</option>
42 <option *ngFor="let type of types"
43 [value]="type">{{ type }}</option>
45 <span class="form-text text-muted"
46 *ngIf="formGroup.showError('type', frm, 'required')"
47 i18n>This field is required.</span>
52 <div class="form-group row"
53 [ngClass]="{':invalid': formGroup.showError('perm', frm)}">
54 <label class="col-form-label col-sm-3"
56 <ng-container i18n>Permission</ng-container>
57 <span class="required"></span>
59 <div class="col-sm-9">
62 formControlName="perm">
64 [ngValue]="null">-- Select a permission --</option>
65 <option *ngFor="let perm of ['read', 'write', '*']"
70 <span class="form-text text-muted"
71 *ngIf="formGroup.showError('perm', frm, 'required')"
72 i18n>This field is required.</span>
77 <div class="modal-footer">
78 <cd-submit-button (submitAction)="onSubmit()"
79 i18n="form action button|Example: Create Pool@@formActionButton"
80 [form]="formGroup">{{ action | titlecase }} {{ resource | upperFirst }}</cd-submit-button>
81 <cd-back-button [back]="bsModalRef.hide"></cd-back-button>