From: Pierre Spring Date: Thu, 8 Dec 2011 07:55:48 +0000 (+0100) Subject: introduces a local time format #17 X-Git-Tag: 1.3.0~33^2~5^2~2 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=d0c7def35842b64111e1a51f2fbd63d3c4348544;p=thirdparty%2Fmoment.git introduces a local time format #17 --- diff --git a/lang/test/en.js b/lang/test/en.js index 2fbb8f956..a31938f2d 100644 --- a/lang/test/en.js +++ b/lang/test/en.js @@ -171,23 +171,23 @@ test("relativeDate", 14, function() { }; moment.lang('en'); - equal(getTodayAtTwo().relativeDate(), "Today at 02:00", "today at the same time"); - equal(getTodayAtTwo().add({ m: 25 }).relativeDate(), "Today at 02:25", "Now plus 25 min"); - equal(getTodayAtTwo().add({ h: 1 }).relativeDate(), "Today at 03:00", "Now plus 1 hour"); - equal(getTodayAtTwo().add({ d: 1 }).relativeDate(), "Tomorrow at 02:00", "tomorrow at the same time"); - equal(getTodayAtTwo().subtract({ h: 1 }).relativeDate(), "Today at 01:00", "Now minus 1 hour"); - equal(getTodayAtTwo().subtract({ d: 1 }).relativeDate(), "Yesterday at 02:00", "yesterday at the same time"); + equal(getTodayAtTwo().relativeDate(), "Today at 2:00 AM", "today at the same time"); + equal(getTodayAtTwo().add({ m: 25 }).relativeDate(), "Today at 2:25 AM", "Now plus 25 min"); + equal(getTodayAtTwo().add({ h: 1 }).relativeDate(), "Today at 3:00 AM", "Now plus 1 hour"); + equal(getTodayAtTwo().add({ d: 1 }).relativeDate(), "Tomorrow at 2:00 AM", "tomorrow at the same time"); + equal(getTodayAtTwo().subtract({ h: 1 }).relativeDate(), "Today at 1:00 AM", "Now minus 1 hour"); + equal(getTodayAtTwo().subtract({ d: 1 }).relativeDate(), "Yesterday at 2:00 AM", "yesterday at the same time"); var nextTomorrow = getTodayAtTwo().add({ d: 2 }); - equal(nextTomorrow.relativeDate(), prefixDay(nextTomorrow, " at 02:00"), "now + 2days at the same time"); + equal(nextTomorrow.relativeDate(), prefixDay(nextTomorrow, " at 2:00 AM"), "now + 2days at the same time"); var previousYesterday = getTodayAtTwo().subtract({ d: 2 }); - equal(previousYesterday.relativeDate(), prefixDay(previousYesterday, " at 02:00", "last"), "now - 2days at the same time"); + equal(previousYesterday.relativeDate(), prefixDay(previousYesterday, " at 2:00 AM", "last"), "now - 2days at the same time"); // Next / Last week equal( getTodayAtTwo().add({ w: 1 }).relativeDate(), - prefixDay(getTodayAtTwo().add({ w: 1 }), " at 02:00"), + prefixDay(getTodayAtTwo().add({ w: 1 }), " at 2:00 AM"), "next week at the same time" ); equal( @@ -197,7 +197,7 @@ test("relativeDate", 14, function() { ); equal( getTodayAtTwo().subtract({ w: 1 }).relativeDate(), - prefixDay(getTodayAtTwo().add({ w: 1 }), " at 02:00", "last"), + prefixDay(getTodayAtTwo().add({ w: 1 }), " at 2:00 AM", "last"), "last week at the same time" ); equal( diff --git a/moment.js b/moment.js index 467af6fa3..4437d79c9 100644 --- a/moment.js +++ b/moment.js @@ -77,7 +77,7 @@ currentMinutes = date.getMinutes(), currentSeconds = date.getSeconds(), currentZone = date.getTimezoneOffset(), - charactersToReplace = /(\\)?(Mo|MM?M?M?|Do|DDDo|DD?D?D?|dddd?|do?|w[o|w]?|YYYY|YY|a|A|hh?|HH?|mm?|ss?|zz?|ZZ?|LL?L?L?)/g, + charactersToReplace = /(\\)?(Mo|MM?M?M?|Do|DDDo|DD?D?D?|dddd?|do?|w[o|w]?|YYYY|YY|a|A|hh?|HH?|mm?|ss?|zz?|ZZ?|LL?L?L?|XXXX)/g, nonuppercaseLetters = /[^A-Z]/g, timezoneRegex = /\([A-Za-z ]+\)|:[0-9]{2} [A-Z]{3} /g, ordinal = moment.ordinal, @@ -183,6 +183,7 @@ case 'LL' : case 'LLL' : case 'LLLL' : + case 'XXXX': return formatDate(date, moment.longDateFormat[input]); // DEFAULT default : @@ -394,10 +395,11 @@ weekdays : "Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"), weekdaysShort : "Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"), longDateFormat : { + XXXX: "h:mm A", L : "MM/DD/YYYY", LL : "MMMM D YYYY", - LLL : "MMMM D YYYY h:mm A", - LLLL : "dddd, MMMM D YYYY h:mm A" + LLL : "MMMM D YYYY XXXX", + LLLL : "dddd, MMMM D YYYY XXXX" }, meridiem : { AM : 'AM', @@ -565,7 +567,7 @@ } if (arrayKey) { - return moment.relativeDate[arrayKey].replace('%weekday', this.format('dddd')).replace('%time', this.format('HH:mm')); + return moment.relativeDate[arrayKey].replace('%weekday', this.format('dddd')).replace('%time', this.format('XXXX')); } return this.format('L');