]> git.ipfire.org Git - thirdparty/moment.git/commitdiff
Adding a fix for Polish next week day name declension.
authorWacław Jacek <mail@waclawjacek.com>
Tue, 11 Jul 2017 13:57:32 +0000 (15:57 +0200)
committerIskren Chernev <iskren.chernev@gmail.com>
Mon, 7 Aug 2017 19:11:10 +0000 (22:11 +0300)
src/locale/pl.js [changed mode: 0644->0755]
src/test/locale/pl.js [changed mode: 0644->0755]

old mode 100644 (file)
new mode 100755 (executable)
index 5591634..505381a
@@ -57,7 +57,24 @@ export default moment.defineLocale('pl', {
     calendar : {
         sameDay: '[Dziś o] LT',
         nextDay: '[Jutro o] LT',
-        nextWeek: '[W] dddd [o] LT',
+        nextWeek: function () {
+            switch (this.day()) {
+                case 0:
+                    return '[W niedzielę o] LT';
+
+                case 2:
+                    return '[We wtorek o] LT';
+
+                case 3:
+                    return '[W środę o] LT';
+
+                case 6:
+                    return '[W sobotę o] LT';
+
+                default:
+                    return '[W] dddd [o] LT';
+            }
+        },
         lastDay: '[Wczoraj o] LT',
         lastWeek: function () {
             switch (this.day()) {
old mode 100644 (file)
new mode 100755 (executable)
index 0211a2e..9ce8f19
@@ -191,13 +191,35 @@ test('calendar day', function (assert) {
 
 test('calendar next week', function (assert) {
     var i, m;
+
+    function makeFormat(d) {
+        switch (d.day()) {
+            case 0:
+                return '[W niedzielę o] LT';
+
+            case 2:
+                return '[We wtorek o] LT';
+
+            case 3:
+                return '[W środę o] LT';
+
+            case 6:
+                return '[W sobotę o] LT';
+
+            default:
+                return '[W] dddd [o] LT';
+        }
+    }
+
     for (i = 2; i < 7; i++) {
         m = moment().add({d: i});
-        assert.equal(m.calendar(),       m.format('[W] dddd [o] LT'),  'Today + ' + i + ' days current time');
+        assert.equal(m.calendar(), m.format(makeFormat(m)), 'Today + ' + i + ' days current time');
+
         m.hours(0).minutes(0).seconds(0).milliseconds(0);
-        assert.equal(m.calendar(),       m.format('[W] dddd [o] LT'),  'Today + ' + i + ' days beginning of day');
+        assert.equal(m.calendar(), m.format(makeFormat(m)), 'Today + ' + i + ' days beginning of day');
+
         m.hours(23).minutes(59).seconds(59).milliseconds(999);
-        assert.equal(m.calendar(),       m.format('[W] dddd [o] LT'),  'Today + ' + i + ' days end of day');
+        assert.equal(m.calendar(), m.format(makeFormat(m)), 'Today + ' + i + ' days end of day');
     }
 });