From 382c40cfa6997771f603b0b1a2abbccd23ba080e Mon Sep 17 00:00:00 2001 From: Mo Bitar Date: Wed, 18 Jul 2018 21:10:34 -0500 Subject: [PATCH] Locale format for last sync date --- app/assets/javascripts/app/filters/appDate.js | 19 ++++++++++++++++++- test/javascripts/filters/DateFilter_spec.js | 5 ----- 2 files changed, 18 insertions(+), 6 deletions(-) diff --git a/app/assets/javascripts/app/filters/appDate.js b/app/assets/javascripts/app/filters/appDate.js index 9a84a796e..f41db3381 100644 --- a/app/assets/javascripts/app/filters/appDate.js +++ b/app/assets/javascripts/app/filters/appDate.js @@ -1,3 +1,6 @@ +// reuse +var locale, formatter; + angular.module('app') .filter('appDate', function ($filter) { return function (input) { @@ -6,6 +9,20 @@ angular.module('app') }) .filter('appDateTime', function ($filter) { return function (input) { + if (typeof Intl !== 'undefined' && Intl.DateTimeFormat) { + if (!formatter) { + locale = (navigator.languages && navigator.languages.length) ? navigator.languages[0] : navigator.language; + formatter = new Intl.DateTimeFormat(locale, { + year: 'numeric', + month: 'numeric', + day: '2-digit', + hour: '2-digit', + minute: '2-digit', + }); + } + return formatter.format(input); + } else { return input ? $filter('date')(new Date(input), 'MM/dd/yyyy h:mm a') : ''; - }; + } + } }); diff --git a/test/javascripts/filters/DateFilter_spec.js b/test/javascripts/filters/DateFilter_spec.js index cdfa55a55..b561b03a7 100644 --- a/test/javascripts/filters/DateFilter_spec.js +++ b/test/javascripts/filters/DateFilter_spec.js @@ -6,11 +6,6 @@ describe("date filter", function() { $filter = _$filter_; })); - it('returns a defined time', function() { - var date = $filter('appDate'); - expect(date(Date())).toBeDefined(); - }); - it('returns time', function() { var dateTime = $filter('appDateTime'); expect(dateTime(Date())).toBeDefined();