1 <cd-modal [pageURL]="pageURL"
2 [modalRef]="activeModal">
3 <span class="modal-title"
4 i18n>{{ action | titlecase }} {{ resource | upperFirst }}</span>
5 <ng-container class="modal-content">
10 <div class="modal-body">
12 <div class="form-group row">
13 <label class="cd-col-form-label"
15 <span [ngClass]="{'required': !edit}"
18 <div class="cd-col-form-input">
23 formControlName="pool">
28 formControlName="pool">
29 <option *ngIf="rbdPools === null"
31 i18n>Loading...</option>
32 <option *ngIf="rbdPools && rbdPools.length === 0"
34 i18n>-- No block pools available --</option>
35 <option *ngIf="rbdPools && rbdPools.length > 0"
37 i18n>-- Select a pool --</option>
38 <option *ngFor="let pool of rbdPools"
39 [value]="pool.pool_name">{{ pool.pool_name }}</option>
42 An RBD application-enabled pool where the image will be created.
44 <span class="invalid-feedback"
45 *ngIf="nsForm.showError('pool', formDir, 'required')"
46 i18n>This field is required.</span>
50 <div class="form-group row">
51 <label class="cd-col-form-label"
53 <span [ngClass]="{'required': !edit}"
54 i18n>Image Name</span>
56 <div class="cd-col-form-input">
60 formControlName="image">
61 <span class="invalid-feedback"
62 *ngIf="nsForm.showError('image', formDir, 'required')">
63 <ng-container i18n>This field is required.</ng-container>
65 <span class="invalid-feedback"
66 *ngIf="nsForm.showError('image', formDir, 'pattern')">
67 <ng-container i18n>'/' and '@' are not allowed.</ng-container>
72 <div class="form-group row">
73 <label class="cd-col-form-label"
75 <span [ngClass]="{'required': edit}"
76 i18n>Image Size</span>
78 <div class="cd-col-form-input">
79 <div class="input-group">
84 formControlName="image_size">
87 class="form-input form-select"
88 formControlName="unit">
89 <option *ngFor="let u of units"
93 <span class="invalid-feedback"
94 *ngIf="nsForm.showError('image_size', formDir, 'pattern')">
95 <ng-container i18n>Enter a positive integer.</ng-container>
97 <span class="invalid-feedback"
98 *ngIf="edit && nsForm.showError('image_size', formDir, 'required')">
99 <ng-container i18n>This field is required</ng-container>
101 <span class="invalid-feedback"
102 *ngIf="edit && invalidSizeError">
103 <ng-container i18n>Enter a value above than previous. A block device image can be expanded but not reduced.</ng-container>
109 <div class="modal-footer">
110 <div class="text-right">
111 <cd-form-button-panel (submitActionEvent)="onSubmit()"
113 [submitText]="(action | titlecase) + ' ' + (resource | upperFirst)"></cd-form-button-panel>