- 
      
- 
        Save korun/187f26f045cee3cbe85c to your computer and use it in GitHub Desktop. 
Revisions
- 
        korun revised this gist Aug 29, 2014 . 1 changed file with 12 additions and 10 deletions.There are no files selected for viewingThis file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -1,7 +1,6 @@ // time in seconds // genitive - использовать ли родительный падеж (true / false) (function (){ var units = [ { name: "second", limit: 60, in_seconds: 1 }, { name: "minute", limit: 3600, in_seconds: 60 }, @@ -33,15 +32,18 @@ function timeAgo(time, genitive) { ends = ends[genitive ? 1 : 0]; return ru_locale[name].name + ends; }; window.timeAgo = function (time, genitive) { genitive = genitive || false; var diff = (new Date() - new Date(time * 1000)) / 1000; if (diff < 5) return "только что"; var i = 0, unit; while (unit = units[i++]) { if (diff < unit.limit || !unit.limit) { diff = Math.floor(diff / unit.in_seconds); return diff + " " + locale(unit.name, diff, genitive); } } } })(); 
- 
        korun revised this gist Aug 29, 2014 . No changes.There are no files selected for viewing
- 
        korun revised this gist Aug 29, 2014 . 1 changed file with 29 additions and 3 deletions.There are no files selected for viewingThis file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -1,4 +1,7 @@ // time in seconds // genitive - использовать ли родительный падеж (true / false) function timeAgo(time, genitive) { genitive = genitive || false; var units = [ { name: "second", limit: 60, in_seconds: 1 }, { name: "minute", limit: 3600, in_seconds: 60 }, @@ -8,14 +11,37 @@ function timeAgo(time) { { name: "month", limit: 31556926, in_seconds: 2629743 }, { name: "year", limit: null, in_seconds: 31556926 } ]; var ru_locale = { second: {name: 'секунд', one: ['а', 'у'], few: 'ы', many: ''}, minute: {name: 'минут', one: ['а', 'у'], few: 'ы', many: ''}, hour: {name: 'час', one: '', few: 'а', many: 'ов'}, day: {name: '', one: 'день', few: 'дня', many: 'дней'}, week: {name: 'недел', one: ['я', 'ю'], few: 'и', many: 'ь'}, month: {name: 'месяц', one: '', few: 'а', many: 'ев'}, year: {name: '', one: 'год', few: 'года', many: 'лет'} }; var locale = function (name, number, genitive) { var e; if (number > 10 && number < 20) e = 'many'; else { number = number % 10; e = number == 1 ? 'one' : (number < 5 && number > 1 ? 'few' : 'many'); } var ends = ru_locale[name][e]; if (typeof ends !== 'string') ends = ends[genitive ? 1 : 0]; return ru_locale[name].name + ends; }; var diff = (new Date() - new Date(time * 1000)) / 1000; if (diff < 5) return "только что"; var i = 0, unit; while (unit = units[i++]) { if (diff < unit.limit || !unit.limit) { diff = Math.floor(diff / unit.in_seconds); return diff + " " + locale(unit.name, diff, genitive); } } } 
- 
        korun revised this gist Aug 29, 2014 . 1 changed file with 20 additions and 20 deletions.There are no files selected for viewingThis file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -1,21 +1,21 @@ function timeAgo(time) { var units = [ { name: "second", limit: 60, in_seconds: 1 }, { name: "minute", limit: 3600, in_seconds: 60 }, { name: "hour", limit: 86400, in_seconds: 3600 }, { name: "day", limit: 604800, in_seconds: 86400 }, { name: "week", limit: 2629743, in_seconds: 604800 }, { name: "month", limit: 31556926, in_seconds: 2629743 }, { name: "year", limit: null, in_seconds: 31556926 } ]; var diff = (new Date() - new Date(time * 1000)) / 1000; if (diff < 5) return "now"; var i = 0, unit; while (unit = units[i++]) { if (diff < unit.limit || !unit.limit) { diff = Math.floor(diff / unit.in_seconds); return diff + " " + unit.name + (diff > 1 ? "s" : ""); } } } 
- 
        korun renamed this gist Aug 29, 2014 . 1 changed file with 0 additions and 0 deletions.There are no files selected for viewingFile renamed without changes.
- 
        skattyadz created this gist Oct 13, 2011 .There are no files selected for viewingThis file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -0,0 +1,21 @@ function timeAgo(time){ var units = [ { name: "second", limit: 60, in_seconds: 1 }, { name: "minute", limit: 3600, in_seconds: 60 }, { name: "hour", limit: 86400, in_seconds: 3600 }, { name: "day", limit: 604800, in_seconds: 86400 }, { name: "week", limit: 2629743, in_seconds: 604800 }, { name: "month", limit: 31556926, in_seconds: 2629743 }, { name: "year", limit: null, in_seconds: 31556926 } ]; var diff = (new Date() - new Date(time*1000)) / 1000; if (diff < 5) return "now"; var i = 0; while (unit = units[i++]) { if (diff < unit.limit || !unit.limit){ var diff = Math.floor(diff / unit.in_seconds); return diff + " " + unit.name + (diff>1 ? "s" : ""); } }; } 
 skattyadz
              created
            
            this gist
            
              skattyadz
              created
            
            this gist