]> git.ipfire.org Git - thirdparty/moment.git/commitdiff
Support for Chuvash suffix changes in future fromNow 398/head
authorAnatoly Mironov <mirontoli@gmail.com>
Thu, 16 Aug 2012 05:39:06 +0000 (07:39 +0200)
committerAnatoly Mironov <mirontoli@gmail.com>
Thu, 16 Aug 2012 05:39:06 +0000 (07:39 +0200)
lang/cv.js
moment.js
test/lang/cv.js

index a0598f47c8b73cf2a4f92ef82417f7cfa1f95c34..a27789cf957ce029fd2d8caf7c9f335fb159a4c5 100644 (file)
                 sameElse: 'L'
             },
             relativeTime : {
-                future : "%sран",
+                future : function(output) {
+                   var affix = /сехет$/i.exec(output)
+                      ? "рен" : /çул$/i.exec(output) ? "тан" : "ран";
+                   return output + affix;
+                },
                 past : "%s каялла",
                 s : "пĕр-ик çеккунт",
                 m : "пĕр минут",
index 95520c0dd3dabd9533938fc281eb62db1e37e718..e89bb7899010ebe7ba193b8e52305b4af01644a3 100644 (file)
--- a/moment.js
+++ b/moment.js
         humanize : function (withSuffix) {
             var difference = +this,
                 rel = this.lang().relativeTime,
-                output = relativeTime(difference, !withSuffix, this.lang());
+                output = relativeTime(difference, !withSuffix, this.lang()),
+                fromNow = difference <= 0 ? rel.past : rel.future;
 
             if (withSuffix) {
-                output = (difference <= 0 ? rel.past : rel.future).replace(/%s/i, output);
+                if (typeof fromNow === 'function') {
+                    output = fromNow(output);
+                }
+                else {
+                    output = fromNow.replace(/%s/i, output);
+                }
             }
 
             return output;
index c42cdce17eae1f07301910a6dd9d493e50b19b35..3de0f3354d3a923084bb8b8e4b63409dabc8e4ce 100644 (file)
@@ -174,10 +174,12 @@ exports["lang:cv"] = {
     },
 
     "fromNow" : function(test) {
-        test.expect(2);
+        test.expect(4);
         moment.lang('cv');
         test.equal(moment().add({s:30}).fromNow(), "пĕр-ик çеккунтран", "in a few seconds");
         test.equal(moment().add({d:5}).fromNow(), "5 кунран", "in 5 days");
+        test.equal(moment().add({h:2}).fromNow(), "2 сехетрен", "in 2 hours, the right suffix!");
+        test.equal(moment().add({y:3}).fromNow(), "3 çултан", "in 3 years, the right suffix!");
         test.done();
     },