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/23 12:00:49 UTC

ambari git commit: AMBARI-10682 Widget's min/max check errors should not stop from saving. (ababiichuk)

Repository: ambari
Updated Branches:
  refs/heads/trunk 4a9e9bd4a -> 245b59972


AMBARI-10682 Widget's min/max check errors should not stop from saving. (ababiichuk)


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

Branch: refs/heads/trunk
Commit: 245b59972a12d7ba6986e2c5c245d76f7aef09d9
Parents: 4a9e9bd
Author: aBabiichuk <ab...@cybervisiontech.com>
Authored: Thu Apr 23 12:20:18 2015 +0300
Committer: aBabiichuk <ab...@cybervisiontech.com>
Committed: Thu Apr 23 12:20:18 2015 +0300

----------------------------------------------------------------------
 ambari-web/app/messages.js                              |  3 +++
 .../app/templates/common/configs/widgets/controls.hbs   |  6 +++++-
 .../common/configs/widgets/slider_config_widget_view.js | 12 ++++++++----
 .../configs/widgets/time_interval_spinner_view.js       | 12 ++++++------
 .../configs/widgets/slider_config_widget_view_test.js   | 12 +++++++++---
 5 files changed, 31 insertions(+), 14 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/ambari/blob/245b5997/ambari-web/app/messages.js
----------------------------------------------------------------------
diff --git a/ambari-web/app/messages.js b/ambari-web/app/messages.js
index 2416384..31aeb67 100644
--- a/ambari-web/app/messages.js
+++ b/ambari-web/app/messages.js
@@ -2591,6 +2591,9 @@ Em.I18n.translations = {
   'config.group.save.confirmation.manage.button': 'Manage Hosts',
   'config.group.description.default': 'New configuration group created on {0}',
 
+  'config.warnMessage.outOfBoundaries.greater': 'Values greater than {0} are not recommended',
+  'config.warnMessage.outOfBoundaries.less': 'Values smaller than {0} are not recommended',
+
   'utils.ajax.errorMessage': 'Error message',
   'utils.ajax.defaultErrorPopupBody.message': 'received on {0} method for API: {1}',
   'utils.ajax.defaultErrorPopupBody.statusCode': '{0} status code'

http://git-wip-us.apache.org/repos/asf/ambari/blob/245b5997/ambari-web/app/templates/common/configs/widgets/controls.hbs
----------------------------------------------------------------------
diff --git a/ambari-web/app/templates/common/configs/widgets/controls.hbs b/ambari-web/app/templates/common/configs/widgets/controls.hbs
index 1780906..7da80e3 100644
--- a/ambari-web/app/templates/common/configs/widgets/controls.hbs
+++ b/ambari-web/app/templates/common/configs/widgets/controls.hbs
@@ -69,7 +69,11 @@
 {{#if view.config.errorMessage}}
   <p class="text-error">{{view.config.errorMessage}}</p>
   {{else}}
-  <p>&nbsp;</p>
+    {{#if view.config.warnMessage}}
+      <p class="text-warning">{{view.config.warnMessage}}</p>
+    {{else}}
+      <p>&nbsp;</p>
+    {{/if}}
 {{/if}}
 
 {{#if view.isComparison}}

http://git-wip-us.apache.org/repos/asf/ambari/blob/245b5997/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 ba8a6fb..ba8a267 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
@@ -185,16 +185,20 @@ App.SliderConfigWidgetView = App.ConfigWidgetView.extend({
       parseFunction = this.get('mirrorValueParseFunction');
     if (validationFunction(mirrorValue)) {
       var parsed = parseFunction(mirrorValue);
-      if (parsed >= min && parsed <= max) {
+      if (parsed > max) {
+        this.set('isMirrorValueValid', false);
+        this.set('config.warnMessage', Em.I18n.t('config.warnMessage.outOfBoundaries.greater').format(max));
+      } else if (parsed < min) {
+        this.set('isMirrorValueValid', false);
+        this.set('config.warnMessage', Em.I18n.t('config.warnMessage.outOfBoundaries.less').format(min));
+      } else {
         this.set('isMirrorValueValid', true);
+        this.set('config.warnMessage', '');
         this.set('config.errorMessage', '');
         this.set('config.value', '' + this.configValueByWidget(parsed));
         if (slider) {
           slider.setValue(parsed);
         }
-      } else {
-        this.set('isMirrorValueValid', false);
-        this.set('config.errorMessage', 'Invalid value');
       }
     } else {
       this.set('isMirrorValueValid', false);

http://git-wip-us.apache.org/repos/asf/ambari/blob/245b5997/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 a4653de..d4340a7 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
@@ -174,18 +174,18 @@ App.TimeIntervalSpinnerView = App.ConfigWidgetView.extend({
    */
   checkErrors: function() {
     var convertedValue = this.configValueByWidget(this.get('content'));
-    var errorMessage = '';
+    var warnMessage = '';
     if (convertedValue < parseInt(this.get('config.stackConfigProperty.valueAttributes.minimum'))) {
-      errorMessage = Em.I18n.t('number.validate.lessThanMinimum').format(this.dateToText(this.get('minValue')));
+      warnMessage = Em.I18n.t('config.warnMessage.outOfBoundaries.less').format(this.dateToText(this.get('minValue')));
     }
     else if (convertedValue > parseInt(this.get('config.stackConfigProperty.valueAttributes.maximum'))) {
-      errorMessage = Em.I18n.t('number.validate.moreThanMaximum').format(this.dateToText(this.get('maxValue')));
+      warnMessage = Em.I18n.t('config.warnMessage.outOfBoundaries.greater').format(this.dateToText(this.get('maxValue')));
     }
     this.setProperties({
-      isValid: !errorMessage,
-      errorMessage: errorMessage
+      isValid: !warnMessage,
+      warnMessage: warnMessage
     });
-    this.set('config.errorMessage', errorMessage);
+    this.set('config.warnMessage', warnMessage);
   },
 
   /**

http://git-wip-us.apache.org/repos/asf/ambari/blob/245b5997/ambari-web/test/views/common/configs/widgets/slider_config_widget_view_test.js
----------------------------------------------------------------------
diff --git a/ambari-web/test/views/common/configs/widgets/slider_config_widget_view_test.js b/ambari-web/test/views/common/configs/widgets/slider_config_widget_view_test.js
index b894a1d..dd09a28 100644
--- a/ambari-web/test/views/common/configs/widgets/slider_config_widget_view_test.js
+++ b/ambari-web/test/views/common/configs/widgets/slider_config_widget_view_test.js
@@ -140,11 +140,13 @@ describe('App.SliderConfigWidgetView', function () {
       expect(viewInt.get('isMirrorValueValid')).to.be.true;
       expect(viewInt.get('config.value')).to.equal('1000');
       expect(viewInt.get('config.errorMessage')).to.equal('');
+      expect(viewInt.get('config.warnMessage')).to.equal('');
 
       viewInt.set('mirrorValue', 100500);
       expect(viewInt.get('isMirrorValueValid')).to.be.false;
       expect(viewInt.get('config.value')).to.equal('1000');
-      expect(viewInt.get('config.errorMessage')).to.have.property('length').that.is.least(1);
+      expect(viewInt.get('config.errorMessage')).to.equal('');
+      expect(viewInt.get('config.warnMessage')).to.have.property('length').that.is.least(1);
     });
 
     it('check float', function () {
@@ -152,11 +154,13 @@ describe('App.SliderConfigWidgetView', function () {
       expect(viewFloat.get('isMirrorValueValid')).to.be.true;
       expect(viewFloat.get('config.value')).to.equal('55.5');
       expect(viewFloat.get('config.errorMessage')).to.equal('');
+      expect(viewFloat.get('config.warnMessage')).to.equal('');
 
       viewFloat.set('mirrorValue', 100500.5);
       expect(viewFloat.get('isMirrorValueValid')).to.be.false;
       expect(viewFloat.get('config.value')).to.equal('55.5');
-      expect(viewFloat.get('config.errorMessage')).to.have.property('length').that.is.least(1);
+      expect(viewFloat.get('config.errorMessage')).to.equal('');
+      expect(viewFloat.get('config.warnMessage')).to.have.property('length').that.is.least(1);
     });
 
     it('check percent', function () {
@@ -164,11 +168,13 @@ describe('App.SliderConfigWidgetView', function () {
       expect(viewPercent.get('isMirrorValueValid')).to.be.true;
       expect(viewPercent.get('config.value')).to.equal('0.32');
       expect(viewPercent.get('config.errorMessage')).to.equal('');
+      expect(viewPercent.get('config.warnMessage')).to.equal('');
 
       viewPercent.set('mirrorValue', 100500.5);
       expect(viewPercent.get('isMirrorValueValid')).to.be.false;
       expect(viewPercent.get('config.value')).to.equal('0.32');
-      expect(viewPercent.get('config.errorMessage')).to.have.property('length').that.is.least(1);
+      expect(viewPercent.get('config.errorMessage')).to.equal('');
+      expect(viewPercent.get('config.warnMessage')).to.have.property('length').that.is.least(1);
     });
   });