Repository: ambari
Updated Branches:
  refs/heads/trunk 2e64b3b9f -> 558925301


AMBARI-11233. Checkbox override issue (onechiporenko)


Project: http://git-wip-us.apache.org/repos/asf/ambari/repo
Commit: http://git-wip-us.apache.org/repos/asf/ambari/commit/55892530
Tree: http://git-wip-us.apache.org/repos/asf/ambari/tree/55892530
Diff: http://git-wip-us.apache.org/repos/asf/ambari/diff/55892530

Branch: refs/heads/trunk
Commit: 558925301b22a06f5b7b35b84f68588e904703b4
Parents: 2e64b3b
Author: Oleg Nechiporenko <[email protected]>
Authored: Tue May 19 12:48:37 2015 +0300
Committer: Oleg Nechiporenko <[email protected]>
Committed: Tue May 19 12:48:37 2015 +0300

----------------------------------------------------------------------
 ambari-web/app/controllers/wizard/step7_controller.js        | 3 ++-
 .../app/mixins/main/service/configs/config_overridable.js    | 4 ++--
 .../app/models/configs/objects/service_config_property.js    | 8 ++++----
 3 files changed, 8 insertions(+), 7 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/ambari/blob/55892530/ambari-web/app/controllers/wizard/step7_controller.js
----------------------------------------------------------------------
diff --git a/ambari-web/app/controllers/wizard/step7_controller.js 
b/ambari-web/app/controllers/wizard/step7_controller.js
index 1325069..7abe894 100644
--- a/ambari-web/app/controllers/wizard/step7_controller.js
+++ b/ambari-web/app/controllers/wizard/step7_controller.js
@@ -1120,8 +1120,9 @@ App.WizardStep7Controller = 
Em.Controller.extend(App.ServerValidatorMixin, App.E
     var overrides = serviceConfigProperty.get('overrides') || [];
     var newSCP = App.ServiceConfigProperty.create(serviceConfigProperty);
     var group = this.get('selectedService.configGroups').findProperty('name', 
this.get('selectedConfigGroup.name'));
+    var valueForOverride = (serviceConfigProperty.get('widget') || 
serviceConfigProperty.get('displayType') == 'checkbox') ? 
serviceConfigProperty.get('value') : '';
     newSCP.set('group', group);
-    newSCP.set('value', serviceConfigProperty.get('widget') ? 
serviceConfigProperty.get('value') : '');
+    newSCP.set('value', valueForOverride);
     newSCP.set('isOriginalSCP', false); // indicated this is overridden value,
     newSCP.set('parentSCP', serviceConfigProperty);
     newSCP.set('isEditable', true);

http://git-wip-us.apache.org/repos/asf/ambari/blob/55892530/ambari-web/app/mixins/main/service/configs/config_overridable.js
----------------------------------------------------------------------
diff --git a/ambari-web/app/mixins/main/service/configs/config_overridable.js 
b/ambari-web/app/mixins/main/service/configs/config_overridable.js
index 0591195..df45e81 100644
--- a/ambari-web/app/mixins/main/service/configs/config_overridable.js
+++ b/ambari-web/app/mixins/main/service/configs/config_overridable.js
@@ -30,7 +30,6 @@ App.ConfigOverridable = Em.Mixin.create({
    * @method createOverrideProperty
    */
   createOverrideProperty: function (event) {
-    $('.tooltip').remove();
     var serviceConfigProperty = event.contexts[0];
     var serviceConfigController = this.get('isView') ? this.get('controller') 
: this;
     var selectedConfigGroup = 
serviceConfigController.get('selectedConfigGroup');
@@ -63,7 +62,8 @@ App.ConfigOverridable = Em.Mixin.create({
       );
     }
     else {
-      serviceConfigController.addOverrideProperty(serviceConfigProperty, 
selectedConfigGroup, serviceConfigProperty.get('widget') ? 
serviceConfigProperty.get('value') : null);
+      var valueForOverride = (serviceConfigProperty.get('widget') || 
serviceConfigProperty.get('displayType') == 'checkbox') ? 
serviceConfigProperty.get('value') : null;
+      serviceConfigController.addOverrideProperty(serviceConfigProperty, 
selectedConfigGroup, valueForOverride);
     }
     Em.$('body>.tooltip').remove();
   },

http://git-wip-us.apache.org/repos/asf/ambari/blob/55892530/ambari-web/app/models/configs/objects/service_config_property.js
----------------------------------------------------------------------
diff --git a/ambari-web/app/models/configs/objects/service_config_property.js 
b/ambari-web/app/models/configs/objects/service_config_property.js
index 2357467..46f6fa6 100644
--- a/ambari-web/app/models/configs/objects/service_config_property.js
+++ b/ambari-web/app/models/configs/objects/service_config_property.js
@@ -425,14 +425,14 @@ App.ServiceConfigProperty = Em.Object.extend({
   _validateOverrides: function () {
     var self = this;
     var isError = false;
-    var value = this.get('value');
+    var value = '' + this.get('value');
     var isOriginalSCP = this.get('isOriginalSCP');
     var supportsFinal = this.get('supportsFinal');
     var isFinal = this.get('isFinal');
     var parentSCP = this.get('parentSCP');
     if (!isOriginalSCP) {
       if (!Em.isNone(parentSCP)) {
-        if (value === parentSCP.get('value')) {
+        if (value === '' + parentSCP.get('value')) {
           if (supportsFinal) {
             if (isFinal === parentSCP.get('isFinal')) {
               this.set('errorMessage', 
Em.I18n.t('config.override.valueEqualToParentConfig'));
@@ -449,7 +449,7 @@ App.ServiceConfigProperty = Em.Object.extend({
           if (overrides) {
             overrides.forEach(function (override) {
               if (self == override) return;
-              if (value === override.get('value')) {
+              if (value === '' + override.get('value')) {
                 if (supportsFinal) {
                   if (isFinal === parentSCP.get('isFinal')) {
                     self.set('errorMessage', 
Em.I18n.t('config.override.valueEqualToAnotherOverrideConfig'));
@@ -469,4 +469,4 @@ App.ServiceConfigProperty = Em.Object.extend({
     return isError;
   }
 
-});
\ No newline at end of file
+});

Reply via email to