diff --git a/static/plugins/vmware/vmware_tab.js b/static/plugins/vmware/vmware_tab.js
index 5eb06e2f9..099754ba2 100644
--- a/static/plugins/vmware/vmware_tab.js
+++ b/static/plugins/vmware/vmware_tab.js
@@ -41,6 +41,7 @@ var Field = React.createClass({
var props = _.extend({
onChange: this.onChange,
disabled: this.props.disabled,
+ tooltipText: this.props.tooltipText,
error: (this.props.model.validationError || {})[metadata.name]
}, _.pick(metadata, 'name', 'type', 'label', 'description'));
switch (metadata.type) {
@@ -77,13 +78,16 @@ var FieldGroup = React.createClass({
var restrictions = this.props.model.testRestrictions();
var metadata = _.filter(this.props.model.get('metadata'), VmWareModels.isRegularField);
var fields = metadata.map((meta) => {
+ if (restrictions.hide[meta.name] && restrictions.hide[meta.name].result) {
+ return null;
+ }
return (
);
});
@@ -338,7 +342,9 @@ var VmWareTab = React.createClass({
cluster: this.props.cluster,
settings: this.props.cluster.get('settings'),
networking_parameters: this.props.cluster.get('networkConfiguration')
- .get('networking_parameters')
+ .get('networking_parameters'),
+ current_vcenter: this.model.get('availability_zones').at(0),
+ glance: this.model.get('glance')
});
this.onModelSync(); // eslint-disable-line no-sync
@@ -407,6 +413,7 @@ var VmWareTab = React.createClass({
var model = this.state.model;
var currentJson = JSON.stringify(this.model.toJSON());
var editable = this.props.cluster.isAvailableForSettingsChanges();
+ this.actions = this.model.testRestrictions();
var hide = this.actions.hide || {};
var disable = this.actions.disable || {};
diff --git a/static/views/cluster_page_tabs/dashboard_tab.js b/static/views/cluster_page_tabs/dashboard_tab.js
index e76e64422..f1705b534 100644
--- a/static/views/cluster_page_tabs/dashboard_tab.js
+++ b/static/views/cluster_page_tabs/dashboard_tab.js
@@ -557,7 +557,10 @@ var ClusterActionsPanel = React.createClass({
function(cluster) {
if (cluster.get('settings').get('common.use_vcenter.value')) {
var vcenter = cluster.get('vcenter');
- vcenter.setModels(configModels);
+ vcenter.setModels(_.extend({
+ current_vcenter: vcenter.get('availability_zones').at(0),
+ glance: vcenter.get('glance')
+ }, configModels));
return !vcenter.isValid() && {
blocker: [
{i18n('vmware.has_errors') + ' '}