diff options
author | Zuul <zuul@review.opendev.org> | 2022-12-02 03:14:24 +0000 |
---|---|---|
committer | Gerrit Code Review <review@openstack.org> | 2022-12-02 03:14:24 +0000 |
commit | 8911e2b8c10d5ea0efbdd896eb5292fc0c7f276f (patch) | |
tree | b492cc2898f833e40b1c8e35cd2659f9c73e1353 | |
parent | 36ed6b03b0e82126e2ba94abc6d93fd87b8d03c3 (diff) | |
parent | 6c5783cad9a4249828e8aa3077d2674781526200 (diff) | |
download | horizon-8911e2b8c10d5ea0efbdd896eb5292fc0c7f276f.tar.gz |
Merge "Make readonly metadata properties unable to edit" into stable/yoga
-rw-r--r-- | horizon/static/framework/widgets/metadata/tree/metadata-tree-item.controller.js | 8 | ||||
-rw-r--r-- | horizon/static/framework/widgets/metadata/tree/tree.service.js | 2 |
2 files changed, 10 insertions, 0 deletions
diff --git a/horizon/static/framework/widgets/metadata/tree/metadata-tree-item.controller.js b/horizon/static/framework/widgets/metadata/tree/metadata-tree-item.controller.js index 1d0720f12..6234699db 100644 --- a/horizon/static/framework/widgets/metadata/tree/metadata-tree-item.controller.js +++ b/horizon/static/framework/widgets/metadata/tree/metadata-tree-item.controller.js @@ -16,6 +16,8 @@ (function () { 'use strict'; + var READONLY_PROPERTIES = ['os_hash_algo', 'os_hash_value']; + angular .module('horizon.framework.widgets.metadata.tree') .controller('MetadataTreeItemController', MetadataTreeItemController); @@ -32,6 +34,12 @@ ctrl.formatErrorMessage = formatErrorMessage; ctrl.opened = false; + if ('item' in ctrl && 'leaf' in ctrl.item && + READONLY_PROPERTIES.includes(ctrl.item.leaf.name)) { + ctrl.item.leaf.readonly = true; + ctrl.item.leaf.required = false; + } + if ('item' in ctrl && 'leaf' in ctrl.item && ctrl.item.leaf.type === 'array') { ctrl.values = ctrl.item.leaf.items.enum.filter(filter).sort(); diff --git a/horizon/static/framework/widgets/metadata/tree/tree.service.js b/horizon/static/framework/widgets/metadata/tree/tree.service.js index 1256985f5..47ba1a844 100644 --- a/horizon/static/framework/widgets/metadata/tree/tree.service.js +++ b/horizon/static/framework/widgets/metadata/tree/tree.service.js @@ -71,6 +71,8 @@ Property.prototype.setValue = function (value) { if (value === null) { this.value = this.type !== 'array' ? null : []; + // if the existing property is null, make the field not required + this.required = false; return; } |