You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ambari.apache.org by ab...@apache.org on 2015/04/20 14:56:15 UTC
ambari git commit: AMBARI-10585 Checkboxes in the
DependedConfigsPopup become unchecked part2. (ababiichuk)
Repository: ambari
Updated Branches:
refs/heads/trunk e5cfe183f -> 6f33889d9
AMBARI-10585 Checkboxes in the DependedConfigsPopup become unchecked part2. (ababiichuk)
Project: http://git-wip-us.apache.org/repos/asf/ambari/repo
Commit: http://git-wip-us.apache.org/repos/asf/ambari/commit/6f33889d
Tree: http://git-wip-us.apache.org/repos/asf/ambari/tree/6f33889d
Diff: http://git-wip-us.apache.org/repos/asf/ambari/diff/6f33889d
Branch: refs/heads/trunk
Commit: 6f33889d91a1714cf27b66992bae8796fa606a3c
Parents: e5cfe18
Author: aBabiichuk <ab...@cybervisiontech.com>
Authored: Mon Apr 20 15:42:10 2015 +0300
Committer: aBabiichuk <ab...@cybervisiontech.com>
Committed: Mon Apr 20 15:42:10 2015 +0300
----------------------------------------------------------------------
.../mixins/common/configs/enhanced_configs.js | 24 ++++++++++++--------
.../widgets/checkbox_config_widget_view.js | 1 -
.../configs/widgets/combo_config_widget_view.js | 1 -
.../configs/widgets/config_widget_view.js | 1 -
.../configs/widgets/list_config_widget_view.js | 1 -
.../widgets/slider_config_widget_view.js | 1 -
.../widgets/time_interval_spinner_view.js | 1 -
.../widgets/toggle_config_widget_view.js | 2 --
ambari-web/app/views/common/controls_view.js | 10 ++++++--
.../common/configs/enhanced_configs_test.js | 2 +-
10 files changed, 23 insertions(+), 21 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ambari/blob/6f33889d/ambari-web/app/mixins/common/configs/enhanced_configs.js
----------------------------------------------------------------------
diff --git a/ambari-web/app/mixins/common/configs/enhanced_configs.js b/ambari-web/app/mixins/common/configs/enhanced_configs.js
index c027c93..a08d991 100644
--- a/ambari-web/app/mixins/common/configs/enhanced_configs.js
+++ b/ambari-web/app/mixins/common/configs/enhanced_configs.js
@@ -157,12 +157,13 @@ App.EnhancedConfigsMixin = Em.Mixin.create({
* @method removeCurrentFromDependentList
*/
removeCurrentFromDependentList: function (config) {
- var current = this.get('_dependentConfigValues').filterProperty('propertyName', config.get('name')).findProperty('fileName', App.config.getConfigTagFromFileName(config.get('filename')));
+ var current = this.get('_dependentConfigValues').find(function(dependentConfig) {
+ return Em.get(dependentConfig, 'propertyName') == config.get('name') && Em.get(dependentConfig, 'fileName') == App.config.getConfigTagFromFileName(config.get('filename'))
+ });
if (current) {
Em.setProperties(current, {
'saveRecommended': false,
- 'saveRecommendedDefault': false,
- 'value': config.get('value')
+ 'saveRecommendedDefault': false
});
}
},
@@ -409,27 +410,30 @@ App.EnhancedConfigsMixin = Em.Mixin.create({
for (var propertyName in configs[key].properties) {
/** if property exists and has value **/
var cp = configProperties.findProperty('name', propertyName);
- var value = cp && cp.get('value');
+ var defaultValue = cp && cp.get('defaultValue');
- if (!Em.isNone(value)) {
- if (!updateOnlyBoundaries) { //on first initial request we don't need to change values
+ if (!Em.isNone(defaultValue)) {
+ if (!updateOnlyBoundaries && Em.isArray(parentConfigs) && parentConfigs.length) { //on first initial request we don't need to change values
var dependentProperty = this.get('_dependentConfigValues').findProperty('propertyName', propertyName);
if (dependentProperty) {
- if (value != configs[key].properties[propertyName]) {
- Em.set(dependentProperty, 'value', value);
+ if (defaultValue != configs[key].properties[propertyName]) {
Em.set(dependentProperty, 'recommendedValue', configs[key].properties[propertyName]);
Em.set(dependentProperty, 'saveRecommended', true);
Em.set(dependentProperty, 'parentConfigs', dependentProperty.parentConfigs.concat(parentPropertiesNames).uniq());
+ } else if (defaultValue === configs[key].properties[propertyName]) {
+ /** if recommended value same as default we shouldn't show it in popup **/
+ cp.set('value', defaultValue);
+ this.get('_dependentConfigValues').removeObject(dependentProperty);
}
} else {
- if (value != configs[key].properties[propertyName]) {
+ if (defaultValue != configs[key].properties[propertyName] && !parentConfigs.mapProperty('name').contains(propertyName)) {
this.get('_dependentConfigValues').pushObject({
saveRecommended: true,
saveRecommendedDefault: true,
fileName: key,
propertyName: propertyName,
configGroup: group ? group.get('name') : service.get('displayName') + " Default",
- value: value,
+ value: defaultValue,
parentConfigs: parentPropertiesNames,
serviceName: serviceName,
allowChangeGroup: serviceName != this.get('content.serviceName') && !this.get('selectedConfigGroup.isDefault'),
http://git-wip-us.apache.org/repos/asf/ambari/blob/6f33889d/ambari-web/app/views/common/configs/widgets/checkbox_config_widget_view.js
----------------------------------------------------------------------
diff --git a/ambari-web/app/views/common/configs/widgets/checkbox_config_widget_view.js b/ambari-web/app/views/common/configs/widgets/checkbox_config_widget_view.js
index 4419605..7acd382 100644
--- a/ambari-web/app/views/common/configs/widgets/checkbox_config_widget_view.js
+++ b/ambari-web/app/views/common/configs/widgets/checkbox_config_widget_view.js
@@ -47,7 +47,6 @@ App.CheckboxConfigWidgetView = App.ConfigWidgetView.extend({
focusIn: function() {},
toggleValue: function() {
this._super();
- this.get('controller').removeCurrentFromDependentList(this.get('serviceConfig'));
this.sendRequestRorDependentConfigs(this.get('serviceConfig'));
}.observes('checked')
}),
http://git-wip-us.apache.org/repos/asf/ambari/blob/6f33889d/ambari-web/app/views/common/configs/widgets/combo_config_widget_view.js
----------------------------------------------------------------------
diff --git a/ambari-web/app/views/common/configs/widgets/combo_config_widget_view.js b/ambari-web/app/views/common/configs/widgets/combo_config_widget_view.js
index e5aaadb..bbeb99b 100644
--- a/ambari-web/app/views/common/configs/widgets/combo_config_widget_view.js
+++ b/ambari-web/app/views/common/configs/widgets/combo_config_widget_view.js
@@ -103,7 +103,6 @@ App.ComboConfigWidgetView = App.ConfigWidgetView.extend({
setConfigValue: function(e) {
this.set('config.value', e.context);
this.set('content.value', this.generateWidgetValue(e.context));
- this.get('controller').removeCurrentFromDependentList(this.get('config'));
this.sendRequestRorDependentConfigs(this.get('config'));
},
http://git-wip-us.apache.org/repos/asf/ambari/blob/6f33889d/ambari-web/app/views/common/configs/widgets/config_widget_view.js
----------------------------------------------------------------------
diff --git a/ambari-web/app/views/common/configs/widgets/config_widget_view.js b/ambari-web/app/views/common/configs/widgets/config_widget_view.js
index fbbf0d1..5a2566f 100644
--- a/ambari-web/app/views/common/configs/widgets/config_widget_view.js
+++ b/ambari-web/app/views/common/configs/widgets/config_widget_view.js
@@ -127,7 +127,6 @@ App.ConfigWidgetView = Em.View.extend(App.SupportsDependentConfigs, App.WidgetPo
restoreValue: function () {
var self = this;
this.set('config.value', this.get('config.defaultValue'));
- this.get('controller').removeCurrentFromDependentList(this.get('config'));
this.sendRequestRorDependentConfigs(this.get('config')).done(function() {
self.restoreDependentConfigs(self.get('config'));
});
http://git-wip-us.apache.org/repos/asf/ambari/blob/6f33889d/ambari-web/app/views/common/configs/widgets/list_config_widget_view.js
----------------------------------------------------------------------
diff --git a/ambari-web/app/views/common/configs/widgets/list_config_widget_view.js b/ambari-web/app/views/common/configs/widgets/list_config_widget_view.js
index 18cd348..2132734 100644
--- a/ambari-web/app/views/common/configs/widgets/list_config_widget_view.js
+++ b/ambari-web/app/views/common/configs/widgets/list_config_widget_view.js
@@ -219,7 +219,6 @@ App.ListConfigWidgetView = App.ConfigWidgetView.extend({
option.set('order', orderCounter);
option.toggleProperty('isSelected');
this.incrementProperty('orderCounter');
- this.get('controller').removeCurrentFromDependentList(this.get('config'));
this.sendRequestRorDependentConfigs(this.get('config'));
return false;
},
http://git-wip-us.apache.org/repos/asf/ambari/blob/6f33889d/ambari-web/app/views/common/configs/widgets/slider_config_widget_view.js
----------------------------------------------------------------------
diff --git a/ambari-web/app/views/common/configs/widgets/slider_config_widget_view.js b/ambari-web/app/views/common/configs/widgets/slider_config_widget_view.js
index 228f6e2..fe0981d 100644
--- a/ambari-web/app/views/common/configs/widgets/slider_config_widget_view.js
+++ b/ambari-web/app/views/common/configs/widgets/slider_config_widget_view.js
@@ -300,7 +300,6 @@ App.SliderConfigWidgetView = App.ConfigWidgetView.extend({
* action to run sendRequestRorDependentConfigs when
* we have changed config value within slider
*/
- self.get('controller').removeCurrentFromDependentList(self.get('config'));
self.sendRequestRorDependentConfigs(self.get('config'));
});
this.set('slider', slider);
http://git-wip-us.apache.org/repos/asf/ambari/blob/6f33889d/ambari-web/app/views/common/configs/widgets/time_interval_spinner_view.js
----------------------------------------------------------------------
diff --git a/ambari-web/app/views/common/configs/widgets/time_interval_spinner_view.js b/ambari-web/app/views/common/configs/widgets/time_interval_spinner_view.js
index d3e8f7e..a4653de 100644
--- a/ambari-web/app/views/common/configs/widgets/time_interval_spinner_view.js
+++ b/ambari-web/app/views/common/configs/widgets/time_interval_spinner_view.js
@@ -194,7 +194,6 @@ App.TimeIntervalSpinnerView = App.ConfigWidgetView.extend({
*/
setConfigValue: function() {
this.set('config.value', '' + this.configValueByWidget(this.get('content')));
- this.get('controller').removeCurrentFromDependentList(this.get('config'));
},
/**
http://git-wip-us.apache.org/repos/asf/ambari/blob/6f33889d/ambari-web/app/views/common/configs/widgets/toggle_config_widget_view.js
----------------------------------------------------------------------
diff --git a/ambari-web/app/views/common/configs/widgets/toggle_config_widget_view.js b/ambari-web/app/views/common/configs/widgets/toggle_config_widget_view.js
index f95d070..7a78c6b 100644
--- a/ambari-web/app/views/common/configs/widgets/toggle_config_widget_view.js
+++ b/ambari-web/app/views/common/configs/widgets/toggle_config_widget_view.js
@@ -126,7 +126,6 @@ App.ToggleConfigWidgetView = App.ConfigWidgetView.extend({
onSwitchChange: function (event, state) {
self.set('switcherValue', state);
if (!self.get('skipRequestForDependencies')) {
- self.get('controller').removeCurrentFromDependentList(self.get('config'));
self.sendRequestRorDependentConfigs(self.get('config'));
}
}
@@ -160,7 +159,6 @@ App.ToggleConfigWidgetView = App.ConfigWidgetView.extend({
this.get('switcher').bootstrapSwitch('toggleState', value);
this.set('skipRequestForDependencies', false);
this.set('switcherValue', value);
- this.get('controller').removeCurrentFromDependentList(this.get('config'));
},
/**
http://git-wip-us.apache.org/repos/asf/ambari/blob/6f33889d/ambari-web/app/views/common/controls_view.js
----------------------------------------------------------------------
diff --git a/ambari-web/app/views/common/controls_view.js b/ambari-web/app/views/common/controls_view.js
index c042a76..0f2271f 100644
--- a/ambari-web/app/views/common/controls_view.js
+++ b/ambari-web/app/views/common/controls_view.js
@@ -76,18 +76,24 @@ App.SupportsDependentConfigs = Ember.Mixin.create({
* and in case there was changes shows popup with info about changed configs
*
* @param {App.ServiceConfigProperty} config
+ * @param {function} complete
* @returns {$.Deferred}
*/
sendRequestRorDependentConfigs: function(config) {
if (App.get('supports.enhancedConfigs') && ['mainServiceInfoConfigsController','wizardStep7Controller'].contains(this.get('controller.name'))) {
var name = config.get('name');
+ var controller = this.get('controller');
var type = App.config.getConfigTagFromFileName(config.get('filename'));
var p = App.StackConfigProperty.find(name + '_' + type);
if (p && p.get('propertyDependedBy.length') > 0) {
- return this.get('controller').getRecommendationsForDependencies([{
+ return controller.getRecommendationsForDependencies([{
"type": type,
"name": name
- }]);
+ }], false, function() {
+ controller.removeCurrentFromDependentList(config);
+ });
+ } else {
+ controller.removeCurrentFromDependentList(config);
}
}
http://git-wip-us.apache.org/repos/asf/ambari/blob/6f33889d/ambari-web/test/mixins/common/configs/enhanced_configs_test.js
----------------------------------------------------------------------
diff --git a/ambari-web/test/mixins/common/configs/enhanced_configs_test.js b/ambari-web/test/mixins/common/configs/enhanced_configs_test.js
index bc88a9f..4b0e141 100644
--- a/ambari-web/test/mixins/common/configs/enhanced_configs_test.js
+++ b/ambari-web/test/mixins/common/configs/enhanced_configs_test.js
@@ -37,7 +37,7 @@ describe('App.EnhancedConfigsMixin', function() {
saveRecommendedDefault: false,
propertyName: 'p1',
fileName: 'f1',
- value: 'v2'
+ value: 'v1'
});
});
});