Merge "Revert "Use display name in category page subheadings if provided""
[lhc/web/wiklou.git] / resources / lib / moment / locale / sr.js
1 // moment.js locale configuration
2 // locale : Serbian-latin (sr)
3 // author : Milan Janačković<milanjanackovic@gmail.com> : https://github.com/milan-j
4
5 (function (factory) {
6 // Comment out broken wrapper, see T145382
7 /*if (typeof define === 'function' && define.amd) {
8 define(['moment'], factory); // AMD
9 } else if (typeof exports === 'object') {
10 module.exports = factory(require('../moment')); // Node
11 } else {
12 factory((typeof global !== 'undefined' ? global : this).moment); // node or other global
13 }*/
14 factory(this.moment);
15 }(function (moment) {
16 var translator = {
17 words: { //Different grammatical cases
18 m: ['jedan minut', 'jedne minute'],
19 mm: ['minut', 'minute', 'minuta'],
20 h: ['jedan sat', 'jednog sata'],
21 hh: ['sat', 'sata', 'sati'],
22 dd: ['dan', 'dana', 'dana'],
23 MM: ['mesec', 'meseca', 'meseci'],
24 yy: ['godina', 'godine', 'godina']
25 },
26 correctGrammaticalCase: function (number, wordKey) {
27 return number === 1 ? wordKey[0] : (number >= 2 && number <= 4 ? wordKey[1] : wordKey[2]);
28 },
29 translate: function (number, withoutSuffix, key) {
30 var wordKey = translator.words[key];
31 if (key.length === 1) {
32 return withoutSuffix ? wordKey[0] : wordKey[1];
33 } else {
34 return number + ' ' + translator.correctGrammaticalCase(number, wordKey);
35 }
36 }
37 };
38
39 return moment.defineLocale('sr', {
40 months: ['januar', 'februar', 'mart', 'april', 'maj', 'jun', 'jul', 'avgust', 'septembar', 'oktobar', 'novembar', 'decembar'],
41 monthsShort: ['jan.', 'feb.', 'mar.', 'apr.', 'maj', 'jun', 'jul', 'avg.', 'sep.', 'okt.', 'nov.', 'dec.'],
42 weekdays: ['nedelja', 'ponedeljak', 'utorak', 'sreda', 'četvrtak', 'petak', 'subota'],
43 weekdaysShort: ['ned.', 'pon.', 'uto.', 'sre.', 'čet.', 'pet.', 'sub.'],
44 weekdaysMin: ['ne', 'po', 'ut', 'sr', 'če', 'pe', 'su'],
45 longDateFormat: {
46 LT: 'H:mm',
47 LTS : 'LT:ss',
48 L: 'DD. MM. YYYY',
49 LL: 'D. MMMM YYYY',
50 LLL: 'D. MMMM YYYY LT',
51 LLLL: 'dddd, D. MMMM YYYY LT'
52 },
53 calendar: {
54 sameDay: '[danas u] LT',
55 nextDay: '[sutra u] LT',
56
57 nextWeek: function () {
58 switch (this.day()) {
59 case 0:
60 return '[u] [nedelju] [u] LT';
61 case 3:
62 return '[u] [sredu] [u] LT';
63 case 6:
64 return '[u] [subotu] [u] LT';
65 case 1:
66 case 2:
67 case 4:
68 case 5:
69 return '[u] dddd [u] LT';
70 }
71 },
72 lastDay : '[juče u] LT',
73 lastWeek : function () {
74 var lastWeekDays = [
75 '[prošle] [nedelje] [u] LT',
76 '[prošlog] [ponedeljka] [u] LT',
77 '[prošlog] [utorka] [u] LT',
78 '[prošle] [srede] [u] LT',
79 '[prošlog] [četvrtka] [u] LT',
80 '[prošlog] [petka] [u] LT',
81 '[prošle] [subote] [u] LT'
82 ];
83 return lastWeekDays[this.day()];
84 },
85 sameElse : 'L'
86 },
87 relativeTime : {
88 future : 'za %s',
89 past : 'pre %s',
90 s : 'nekoliko sekundi',
91 m : translator.translate,
92 mm : translator.translate,
93 h : translator.translate,
94 hh : translator.translate,
95 d : 'dan',
96 dd : translator.translate,
97 M : 'mesec',
98 MM : translator.translate,
99 y : 'godinu',
100 yy : translator.translate
101 },
102 ordinalParse: /\d{1,2}\./,
103 ordinal : '%d.',
104 week : {
105 dow : 1, // Monday is the first day of the week.
106 doy : 7 // The week that contains Jan 1st is the first week of the year.
107 }
108 });
109 }));