diff options
Diffstat (limited to 'resources/lib/moment/locale/sr-cyrl.js')
-rw-r--r-- | resources/lib/moment/locale/sr-cyrl.js | 68 |
1 files changed, 40 insertions, 28 deletions
diff --git a/resources/lib/moment/locale/sr-cyrl.js b/resources/lib/moment/locale/sr-cyrl.js index 14d47b250e72..9da10fa60d50 100644 --- a/resources/lib/moment/locale/sr-cyrl.js +++ b/resources/lib/moment/locale/sr-cyrl.js @@ -1,6 +1,7 @@ //! moment.js locale configuration //! locale : Serbian Cyrillic [sr-cyrl] //! author : Milan Janačković<milanjanackovic@gmail.com> : https://github.com/milan-j +//! author : Stefan Crnjaković <stefan@hotmail.rs> : https://github.com/crnjakovic ;(function (global, factory) { typeof exports === 'object' && typeof module !== 'undefined' @@ -15,32 +16,44 @@ words: { //Different grammatical cases ss: ['секунда', 'секунде', 'секунди'], - m: ['један минут', 'једне минуте'], - mm: ['минут', 'минуте', 'минута'], + m: ['један минут', 'једног минута'], + mm: ['минут', 'минута', 'минута'], h: ['један сат', 'једног сата'], hh: ['сат', 'сата', 'сати'], + d: ['један дан', 'једног дана'], dd: ['дан', 'дана', 'дана'], + M: ['један месец', 'једног месеца'], MM: ['месец', 'месеца', 'месеци'], - yy: ['година', 'године', 'година'], + y: ['једну годину', 'једне године'], + yy: ['годину', 'године', 'година'], }, correctGrammaticalCase: function (number, wordKey) { - return number === 1 - ? wordKey[0] - : number >= 2 && number <= 4 - ? wordKey[1] - : wordKey[2]; + if ( + number % 10 >= 1 && + number % 10 <= 4 && + (number % 100 < 10 || number % 100 >= 20) + ) { + return number % 10 === 1 ? wordKey[0] : wordKey[1]; + } + return wordKey[2]; }, - translate: function (number, withoutSuffix, key) { - var wordKey = translator.words[key]; + translate: function (number, withoutSuffix, key, isFuture) { + var wordKey = translator.words[key], + word; + if (key.length === 1) { - return withoutSuffix ? wordKey[0] : wordKey[1]; - } else { - return ( - number + - ' ' + - translator.correctGrammaticalCase(number, wordKey) - ); + // Nominativ + if (key === 'y' && withoutSuffix) return 'једна година'; + return isFuture || withoutSuffix ? wordKey[0] : wordKey[1]; + } + + word = translator.correctGrammaticalCase(number, wordKey); + // Nominativ + if (key === 'yy' && withoutSuffix && word === 'годину') { + return number + ' година'; } + + return number + ' ' + word; }, }; @@ -48,9 +61,8 @@ months: 'јануар_фебруар_март_април_мај_јун_јул_август_септембар_октобар_новембар_децембар'.split( '_' ), - monthsShort: 'јан._феб._мар._апр._мај_јун_јул_авг._сеп._окт._нов._дец.'.split( - '_' - ), + monthsShort: + 'јан._феб._мар._апр._мај_јун_јул_авг._сеп._окт._нов._дец.'.split('_'), monthsParseExact: true, weekdays: 'недеља_понедељак_уторак_среда_четвртак_петак_субота'.split('_'), weekdaysShort: 'нед._пон._уто._сре._чет._пет._суб.'.split('_'), @@ -59,10 +71,10 @@ longDateFormat: { LT: 'H:mm', LTS: 'H:mm:ss', - L: 'DD.MM.YYYY', - LL: 'D. MMMM YYYY', - LLL: 'D. MMMM YYYY H:mm', - LLLL: 'dddd, D. MMMM YYYY H:mm', + L: 'D. M. YYYY.', + LL: 'D. MMMM YYYY.', + LLL: 'D. MMMM YYYY. H:mm', + LLLL: 'dddd, D. MMMM YYYY. H:mm', }, calendar: { sameDay: '[данас у] LT', @@ -106,18 +118,18 @@ mm: translator.translate, h: translator.translate, hh: translator.translate, - d: 'дан', + d: translator.translate, dd: translator.translate, - M: 'месец', + M: translator.translate, MM: translator.translate, - y: 'годину', + y: translator.translate, yy: translator.translate, }, dayOfMonthOrdinalParse: /\d{1,2}\./, ordinal: '%d.', week: { dow: 1, // Monday is the first day of the week. - doy: 7, // The week that contains Jan 7th is the first week of the year. + doy: 7, // The week that contains Jan 1st is the first week of the year. }, }); |