Π€ΠΎΡΠΌΠ°ΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ Π²ΠΈΠ΄ΠΆΠ΅ΡΠ° "Π€ΠΈΠ»ΡΡΡ"
Π€ΠΎΡΠΌΠ°ΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΠΌΠΎΠΆΠ΅Ρ ΠΏΡΠΈΠΌΠ΅Π½ΡΡΡΡΡ Π² ΠΏΠΎΠ»Π΅ Π€ΠΎΡΠΌΠ°ΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΡΠ΅ΠΊΡΡΠ° ΡΠ°Π·Π΄Π΅Π»Π° Π€ΠΈΠ»ΡΡΡ (Π°ΠΊΡΠΈΠ²ΠΈΡΡΠ΅ΡΡΡ Π³Π°Π»ΠΎΡΠΊΠΎΠΉ ΠΠΊΠ»ΡΡΠΈΡΡ ΡΠΎΡΠΌΠ°ΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅):
ΠΡΠΈ ΡΠΎΡΠΌΠ°ΡΠΈΡΠΎΠ²Π°Π½ΠΈΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΡΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅ Π·Π°ΡΠ΅Π·Π΅ΡΠ²ΠΈΡΠΎΠ²Π°Π½Π½ΡΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ:
@value - Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΡΠΈΠ»ΡΡΡΠ° Π½Π° ΡΡΠΎΠ²Π½Π΅
@path - ΠΌΠ°ΡΡΠΈΠ² Π²ΡΠ΅Ρ ΡΠΎΠ΄ΠΈΡΠ΅Π»ΡΡΠΊΠΈΡ ΡΡΠΎΠ²Π½Π΅ΠΉ
@path[0]
ΡΠ°ΠΌΡΠΉ ΠΏΠ΅ΡΠ²ΡΠΉ ΡΠΎΠ΄ΠΈΡΠ΅Π»Ρ
@path[@level-1]
Π±Π»ΠΈΠΆΠ°ΠΉΡΠΈΠΉ ΡΠΎΠ΄ΠΈΡΠ΅Π»Ρ
@level - ΡΡΠΎΠ²Π΅Π½Ρ Π²Π»ΠΎΠΆΠ΅Π½Π½ΠΎΡΡΠΈ
ΠΡΠΈΠΌΠ΅ΡΡ ΡΠΎΡΠΌΠ°ΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ
ΠΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ ΡΠ΅ΠΊΡΡΠ° ΠΊ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠ°ΠΌ Π² Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ ΠΎΡ ΡΡΠΎΠ²Π½Ρ
ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄ΠΎΠ±Π°Π²ΠΈΡΡ ΠΏΠΎΡΡΠ½ΠΈΡΠ΅Π»ΡΠ½ΡΠΉ ΡΠ΅ΠΊΡΡ ΠΊ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°Π΅ΠΌΡΠΌ Π² Π²ΠΈΠ΄ΠΆΠ΅ΡΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΡΠΌ. Π Π½Π°ΡΠ΅ΠΌ ΠΏΡΠΈΠΌΠ΅ΡΠ΅ ΠΌΡ Π΄ΠΎΠ±Π°Π²ΠΈΠΌ ΠΊ ΡΠΈΡΠ»ΠΎΠ²ΠΎΠΌΡ ΠΎΠ±ΠΎΠ·Π½Π°ΡΠ΅Π½ΠΈΡ Π³ΠΎΠ΄Π° ΡΠ»ΠΎΠ²ΠΎ Π³ΠΎΠ΄ (Π½ΡΠ»Π΅Π²ΠΎΠΉ ΡΡΠΎΠ²Π΅Π½Ρ Π²Π»ΠΎΠΆΠ΅Π½Π½ΠΎΡΡΠΈ) ΠΈ ΠΊ ΠΎΡΡΠ°Π»ΡΠ½ΡΠΌ Π·Π½Π°ΡΠ΅Π½ΠΈΡΠΌ - ΡΠ»ΠΎΠ²ΠΎ Π½Π΅Π΄Π΅Π»Ρ. ΠΠ»Ρ ΡΡΠΎΠ³ΠΎ ΠΌΡ Π²Π²Π΅Π΄Π΅ΠΌ ΡΠ»Π΅Π΄ΡΡΡΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ Π² ΠΏΠΎΠ»Π΅ Π€ΠΎΡΠΌΠ°ΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΡΠ΅ΠΊΡΡΠ° ΡΠ°Π·Π΄Π΅Π»Π° Π€ΠΈΠ»ΡΡΡ:
@level == 0 ? @value + ' Π³ΠΎΠ΄' : @value + ' Π½Π΅Π΄Π΅Π»Ρ'
ΠΠ΄Π΅ @level == 0
β ΡΡΠΎΠ²Π΅Π½Ρ Π²Π»ΠΎΠΆΠ΅Π½Π½ΠΎΡΡΠΈ (Π² Π½Π°ΡΠ΅ΠΌ ΠΏΡΠΈΠΌΠ΅ΡΠ΅ ΡΡΠΎ 0
);@value + ' Π³ΠΎΠ΄'
, @value + ' Π½Π΅Π΄Π΅Π»Ρ'
β ΡΠ΅ΠΊΡΡ, Π΄ΠΎΠ±Π°Π²Π»ΡΠ΅ΠΌΡΠΉ ΠΊ Π·Π½Π°ΡΠ΅Π½ΠΈΡΠΌ.
Π€ΠΎΡΠΌΠ°ΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΠΏΠΎΠ΄ΠΏΠΈΡΠ΅ΠΉ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΡΠΈΠ»ΡΡΡΠ° Π² Π²ΠΈΠ΄Π΅ ΠΏΠ΅ΡΠΈΠΎΠ΄Π° Π΄Π½Π΅ΠΉ ΠΎΡΠ½ΠΎΡΠΈΡΠ΅Π»ΡΠ½ΠΎ Π½Π΅Π΄Π΅Π»ΠΈ Π² Π³ΠΎΠ΄Ρ
ΠΠ»Ρ ΠΊΠΎΡΡΠ΅ΠΊΡΠ½ΠΎΠΉ ΡΠ°Π±ΠΎΡΡ, Π² ΠΈΠ΅ΡΠ°ΡΡ ΠΈΠΈ ΠΈΠ·ΠΌΠ΅ΡΠ΅Π½ΠΈΠΉ Π΄ΠΎΠ»ΠΆΠ½Ρ Π±ΡΡΡ Π²ΡΠ±ΡΠ°Π½Ρ ΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅ Π°ΡΡΠΈΠ±ΡΡΡ ΠΈΠ·ΠΌΠ΅ΡΠ΅Π½ΠΈΡ:
ΠΠΎΠ΄ Π΄Π»Ρ Π½Π΅Π΄Π΅Π»ΠΈ
ΠΠΎΠΌΠ΅Ρ Π½Π΅Π΄Π΅Π»ΠΈ
ΠΠ°Π½Π½ΡΠΉ ΡΠΈΠΏ ΡΠΎΡΠΌΠ°ΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΡΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΡΠ»Π΅Π΄ΡΡΡΠ΅Π³ΠΎ ΡΠΊΡΠΈΠΏΡΠ°:
@level === 0 ? @value : ((year, weekNo) => {
var d1 = new Date();
d1.setFullYear(year);
var numOfdaysPastSinceLastMonday = (d1.getDay() - 1);
d1.setDate(d1.getDate() - numOfdaysPastSinceLastMonday);
var weekNoToday = (dt => {
var target = new Date(dt.valueOf());
var dayNr = (dt.getDay() + 6) % 7;
target.setDate(target.getDate() - dayNr + 3);
var firstThursday = target.valueOf();
target.setMonth(0, 1);
if (target.getDay() != 4) {
target.setMonth(0, 1 + ((4 - target.getDay()) + 7) % 7)
}
return 1 + Math.ceil((firstThursday - target) / 604800000)
})(d1);
var weeksInTheFuture = (weekNo - weekNoToday);
d1.setDate(d1.getDate() + (7 * weeksInTheFuture));
var rangeIsFrom = weekNo + " Π½Π΅Π΄Π΅Π»Ρ " + d1.getDate() + "." + (d1.getMonth() + 1);
d1.setDate(d1.getDate() + 6);
var rangeIsTo = d1.getDate() + "." + (d1.getMonth() + 1);
return rangeIsFrom + " - " + rangeIsTo
})(@path[0], @path[1])
ΠΠ½Π²Π΅ΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΡΠΎΡΠΌΠ°ΡΠ° Π΄Π°ΡΡ Ρ YYYY-MM-DD Π½Π° DD-MM-YYYY
ΠΠ»Ρ ΠΈΠ½Π²Π΅ΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΡΠΎΡΠΌΠ°ΡΠ° Π΄Π°ΡΡ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ Π²ΡΠΏΠΎΠ»Π½ΠΈΡΡ ΡΠ»Π΅Π΄ΡΡΡΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ:
@value.split('-').reverse().join('-')
Π Π΅Π·ΡΠ»ΡΡΠ°Ρ ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ ΠΏΠΎΠΊΠ°Π·Π°Π½ Π½ΠΈΠΆΠ΅: