Make existing empty metadata properties optional

Editing of snapshot image or updating its metadata from Horizon is
not allowed until existing properties with empty values are set or
removed from metadata tree.

They are allowed to be None, therefore Horizon should consider them
optional too.

Closes-Bug: #1945706
Change-Id: Idfec71d209430c7d069133a40ca1a7d340163783
(cherry picked from commit 4e0f5a5a85467ca83743e6e8126cd570f329afb9)
This commit is contained in:
Tatiana Ovchinnikova 2021-09-30 16:20:44 -05:00
parent da9b7c2fb3
commit 1ef4549711
2 changed files with 7 additions and 1 deletions

View File

@ -13,7 +13,7 @@
type="text"
class="form-control"
ng-pattern="ctrl.item.leaf.pattern"
required
ng-required="ctrl.item.leaf.required"
ng-model="ctrl.item.leaf.value"
ng-minlength="{$ ::ctrl.item.leaf.minLength $}"
ng-maxlength="{$ ::ctrl.item.leaf.maxLength $}"

View File

@ -56,6 +56,7 @@
this.default = null;
this.type = 'string';
this.readonly = false;
this.required = true;
this.operators = ['<in>'];
angular.extend(this, json);
this.operator = this.operators[0];
@ -73,6 +74,11 @@
return;
}
// if the existing property has empty string value, make the field not required
if (value === '') {
this.required = false;
}
switch (this.type) {
case 'integer':
this.value = parseInt(value, 10);