From 69b5be099ba633d6600c8c9ed764730380bf3610 Mon Sep 17 00:00:00 2001 From: Tim Wood Date: Fri, 11 Jan 2013 10:52:52 -0800 Subject: [PATCH] adding ability to set the parse language --- moment.js | 8 +++++--- test/moment/create.js | 19 +++++++++++++++++++ 2 files changed, 24 insertions(+), 3 deletions(-) diff --git a/moment.js b/moment.js index 1d9cbcf84..32b17ec18 100644 --- a/moment.js +++ b/moment.js @@ -608,7 +608,7 @@ break; case 'MMM' : // fall through to MMMM case 'MMMM' : - a = getLangDefinition().monthsParse(input); + a = getLangDefinition(config._l).monthsParse(input); // if we didn't find a month name, mark the date as invalid. if (a != null) { datePartArray[1] = a; @@ -912,19 +912,21 @@ return new Moment(config); } - moment = function (input, format) { + moment = function (input, format, lang) { return makeMoment({ _i : input, _f : format, + _l : lang, _isUTC : false }); }; // creating with utc - moment.utc = function (input, format) { + moment.utc = function (input, format, lang) { return makeMoment({ _useUTC : true, _isUTC : true, + _l : lang, _i : input, _f : format }); diff --git a/test/moment/create.js b/test/moment/create.js index 2be29b53d..29bc59f8b 100644 --- a/test/moment/create.js +++ b/test/moment/create.js @@ -350,6 +350,25 @@ exports.create = { test.expect(2); test.equal(moment("-1000-01-01", "YYYYY-MM-DD").toDate().getFullYear(), -1000, "parse BC 1,001"); test.equal(moment.utc("-1000-01-01", "YYYYY-MM-DD").toDate().getUTCFullYear(), -1000, "parse utc BC 1,001"); + test.done(); + }, + + "parsing into a language" : function (test) { + test.expect(2); + + moment.lang('parselang', { + months : "one_two_three_four_five_six_seven_eight_nine_ten_eleven_twelve".split('_'), + monthsShort : "one_two_three_four_five_six_seven_eight_nine_ten_eleven_twelve".split("_") + }); + + moment.lang('en'); + + test.equal(moment('2012 seven', 'YYYY MMM', 'parselang').month(), 6, "should be able to parse in a specific language"); + + moment.lang('parselang'); + + test.equal(moment('2012 july', 'YYYY MMM', 'en').month(), 6, "should be able to parse in a specific language"); + test.done(); } }; -- 2.47.2