From: Tim Wood Date: Wed, 11 Apr 2012 02:18:09 +0000 (-0700) Subject: Add a getter for moment.lang() X-Git-Tag: 1.6.0~1^2~12 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=fd8da1c0f7d282a4a68738376cb25ed2683f50c5;p=thirdparty%2Fmoment.git Add a getter for moment.lang() #266 --- diff --git a/moment.js b/moment.js index 8b87a9d7a..5f742f07e 100644 --- a/moment.js +++ b/moment.js @@ -9,6 +9,7 @@ var moment, round = Math.round, languages = {}, + currentLanguage = 'en', hasModule = (typeof module !== 'undefined'), paramsToParse = 'months|monthsShort|monthsParse|weekdays|weekdaysShort|longDateFormat|calendar|relativeTime|ordinal|meridiem'.split('|'), i, @@ -503,6 +504,9 @@ param, req, parse = []; + if (!key) { + return currentLanguage; + } if (values) { for (i = 0; i < 12; i++) { parse[i] = new RegExp('^' + values.months[i] + '|^' + values.monthsShort[i].replace('.', ''), 'i'); @@ -515,6 +519,7 @@ param = paramsToParse[i]; moment[param] = languages[key][param] || languages.en[param]; } + currentLanguage = key; } else { if (hasModule) { req = require('./lang/' + key); diff --git a/test/moment/lang.js b/test/moment/lang.js new file mode 100644 index 000000000..7ed208f0e --- /dev/null +++ b/test/moment/lang.js @@ -0,0 +1,21 @@ +var moment = require("../../moment"); + +exports.lang = { + "getter" : function(test) { + test.expect(4); + + moment.lang('en'); + test.equal(moment.lang(), 'en', 'Lang should return en by default'); + + moment.lang('fr'); + test.equal(moment.lang(), 'fr', 'Lang should return the changed language'); + + moment.lang('en-gb'); + test.equal(moment.lang(), 'en-gb', 'Lang should return the changed language'); + + moment.lang('en'); + test.equal(moment.lang(), 'en', 'Lang should reset'); + + test.done(); + } +};