Repository: ambari
Updated Branches:
  refs/heads/trunk 9f7e87e3e -> ed6f3ab01


AMBARI-14035. $.timeago for alert instance and alert definitions should use not 
converted with timezone timestamps (onechiporenko)


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

Branch: refs/heads/trunk
Commit: ed6f3ab01aa67384dac728454c86a45df318a287
Parents: 9f7e87e
Author: Oleg Nechiporenko <onechipore...@apache.org>
Authored: Tue Nov 24 13:07:27 2015 +0200
Committer: Oleg Nechiporenko <onechipore...@apache.org>
Committed: Tue Nov 24 13:13:42 2015 +0200

----------------------------------------------------------------------
 ambari-web/app/mappers/alert_definition_summary_mapper.js | 3 ++-
 ambari-web/app/mappers/alert_definitions_mapper.js        | 1 +
 ambari-web/app/mappers/alert_instances_mapper.js          | 1 +
 ambari-web/app/models/alerts/alert_definition.js          | 9 +++++----
 ambari-web/app/models/alerts/alert_instance.js            | 5 +++--
 ambari-web/test/models/alerts/alert_definition_test.js    | 4 ++--
 6 files changed, 14 insertions(+), 9 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/ambari/blob/ed6f3ab0/ambari-web/app/mappers/alert_definition_summary_mapper.js
----------------------------------------------------------------------
diff --git a/ambari-web/app/mappers/alert_definition_summary_mapper.js 
b/ambari-web/app/mappers/alert_definition_summary_mapper.js
index b6aa135..3977518 100644
--- a/ambari-web/app/mappers/alert_definition_summary_mapper.js
+++ b/ambari-web/app/mappers/alert_definition_summary_mapper.js
@@ -48,7 +48,8 @@ App.alertDefinitionSummaryMapper = 
App.QuickDataMapper.create({
         });
         summaryMap[alertDefinitionSummary.definition_id] = {
           summary: summary,
-          lastTriggered: App.dateTimeWithTimeZone(parseInt(timestamp))
+          lastTriggered: App.dateTimeWithTimeZone(parseInt(timestamp)),
+          lastTriggeredRaw: timestamp
         };
       }
     });

http://git-wip-us.apache.org/repos/asf/ambari/blob/ed6f3ab0/ambari-web/app/mappers/alert_definitions_mapper.js
----------------------------------------------------------------------
diff --git a/ambari-web/app/mappers/alert_definitions_mapper.js 
b/ambari-web/app/mappers/alert_definitions_mapper.js
index 7dad450..58d8c0b 100644
--- a/ambari-web/app/mappers/alert_definitions_mapper.js
+++ b/ambari-web/app/mappers/alert_definitions_mapper.js
@@ -122,6 +122,7 @@ App.alertDefinitionsMapper = App.QuickDataMapper.create({
           // new values will be parsed in the another mapper, so for now just 
use old values
           alertDefinition.summary = oldAlertDefinition.get('summary');
           alertDefinition.last_triggered = 
oldAlertDefinition.get('lastTriggered');
+          alertDefinition.last_triggered_raw = 
oldAlertDefinition.get('lastTriggeredRaw');
         }
 
         alertDefinitionsToDelete = 
alertDefinitionsToDelete.without(alertDefinition.id);

http://git-wip-us.apache.org/repos/asf/ambari/blob/ed6f3ab0/ambari-web/app/mappers/alert_instances_mapper.js
----------------------------------------------------------------------
diff --git a/ambari-web/app/mappers/alert_instances_mapper.js 
b/ambari-web/app/mappers/alert_instances_mapper.js
index 45a4760..349d94d 100644
--- a/ambari-web/app/mappers/alert_instances_mapper.js
+++ b/ambari-web/app/mappers/alert_instances_mapper.js
@@ -35,6 +35,7 @@ App.alertInstanceMapper = App.QuickDataMapper.create({
     host_name: 'Alert.host_name',
     scope: 'Alert.scope',
     original_timestamp: 'Alert.original_timestamp',
+    original_raw_timestamp: 'Alert.original_timestamp',
     latest_timestamp: 'Alert.latest_timestamp',
     maintenance_state: 'Alert.maintenance_state',
     instance: 'Alert.instance',

http://git-wip-us.apache.org/repos/asf/ambari/blob/ed6f3ab0/ambari-web/app/models/alerts/alert_definition.js
----------------------------------------------------------------------
diff --git a/ambari-web/app/models/alerts/alert_definition.js 
b/ambari-web/app/models/alerts/alert_definition.js
index ec5797e..40e601d 100644
--- a/ambari-web/app/models/alerts/alert_definition.js
+++ b/ambari-web/app/models/alerts/alert_definition.js
@@ -41,6 +41,7 @@ App.AlertDefinition = DS.Model.extend({
   groups: DS.hasMany('App.AlertGroup'),
   reporting: DS.hasMany('App.AlertReportDefinition'),
   lastTriggered: DS.attr('number'),
+  lastTriggeredRaw: DS.attr('number'),
 
   //relates only to SCRIPT-type alert definition
   location: DS.attr('string'),
@@ -102,9 +103,9 @@ App.AlertDefinition = DS.Model.extend({
    * @type {string}
    */
   lastTriggeredAgoFormatted: function () {
-    var lastTriggered = this.get('lastTriggered');
+    var lastTriggered = this.get('lastTriggeredRaw');
     return lastTriggered ? $.timeago(new Date(lastTriggered)) : '';
-  }.property('lastTriggered'),
+  }.property('lastTriggeredRaw'),
 
   lastTriggeredVerboseDisplay: function () {
     var lastTriggered = this.get('lastTriggered');
@@ -116,7 +117,7 @@ App.AlertDefinition = DS.Model.extend({
    * @type {string}
    */
   lastTriggeredForFormatted: function () {
-    var lastTriggered = this.get('lastTriggered');
+    var lastTriggered = this.get('lastTriggeredRaw');
     var previousSuffixAgo = $.timeago.settings.strings.suffixAgo;
     var previousPrefixAgo = $.timeago.settings.strings.prefixAgo;
     $.timeago.settings.strings.suffixAgo = null;
@@ -125,7 +126,7 @@ App.AlertDefinition = DS.Model.extend({
     $.timeago.settings.strings.suffixAgo = previousSuffixAgo;
     $.timeago.settings.strings.prefixAgo = previousPrefixAgo;
     return triggeredFor;
-  }.property('lastTriggered'),
+  }.property('lastTriggeredRaw'),
 
   /**
    * Formatted displayName for <code>componentName</code>

http://git-wip-us.apache.org/repos/asf/ambari/blob/ed6f3ab0/ambari-web/app/models/alerts/alert_instance.js
----------------------------------------------------------------------
diff --git a/ambari-web/app/models/alerts/alert_instance.js 
b/ambari-web/app/models/alerts/alert_instance.js
index bec2148..f80b859 100644
--- a/ambari-web/app/models/alerts/alert_instance.js
+++ b/ambari-web/app/models/alerts/alert_instance.js
@@ -31,6 +31,7 @@ App.AlertInstance = DS.Model.extend({
   hostName: DS.attr('string'),
   scope: DS.attr('string'),
   originalTimestamp: DS.attr('number'),
+  originalRawTimestamp: DS.attr('number'),
   latestTimestamp: DS.attr('number'),
   maintenanceState: DS.attr('string'),
   instance: DS.attr('string'),
@@ -89,7 +90,7 @@ App.AlertInstance = DS.Model.extend({
    * @type {string}
    */
   lastTriggeredAgoFormatted: function () {
-    var lastTriggered = this.get('originalTimestamp');
+    var lastTriggered = this.get('originalRawTimestamp');
     return lastTriggered ? $.timeago(new Date(lastTriggered)) : '';
   }.property('originalTimestamp'),
 
@@ -106,7 +107,7 @@ App.AlertInstance = DS.Model.extend({
    * @type {string}
    */
   lastTriggeredForFormatted: function () {
-    var lastTriggered = this.get('originalTimestamp');
+    var lastTriggered = this.get('originalRawTimestamp');
     var previousSuffixAgo = $.timeago.settings.strings.suffixAgo;
     var previousPrefixAgo = $.timeago.settings.strings.prefixAgo;
     $.timeago.settings.strings.suffixAgo = null;

http://git-wip-us.apache.org/repos/asf/ambari/blob/ed6f3ab0/ambari-web/test/models/alerts/alert_definition_test.js
----------------------------------------------------------------------
diff --git a/ambari-web/test/models/alerts/alert_definition_test.js 
b/ambari-web/test/models/alerts/alert_definition_test.js
index 1aeea49..c32dde4 100644
--- a/ambari-web/test/models/alerts/alert_definition_test.js
+++ b/ambari-web/test/models/alerts/alert_definition_test.js
@@ -162,12 +162,12 @@ describe('App.AlertDefinition', function () {
   describe('#lastTriggeredAgoFormatted', function () {
 
     it('should be empty', function () {
-      model.set('lastTriggered', 0);
+      model.set('lastTriggeredRaw', 0);
       expect(model.get('lastTriggeredAgoFormatted')).to.equal('');
     });
 
     it('should not be empty', function () {
-      model.set('lastTriggered', new Date().getTime() - 61000);
+      model.set('lastTriggeredRaw', new Date().getTime() - 61000);
       expect(model.get('lastTriggeredAgoFormatted')).to.equal('about a minute 
ago');
     });
 

Reply via email to