Шаблон:День в истории: различия между версиями
Nikita (обсуждение | вклад) (Частичное сворачивание длинного списка игр под спойлер) |
Nikita (обсуждение | вклад) (Адаптация к датам дней рождения без явного указания года) |
||
Строка 8: | Строка 8: | ||
{{#switch: {{#arrayindex:aDate|1}} | 01 = {{#vardefine:sCurrentMonthNameGen|января}} | 02 = {{#vardefine:sCurrentMonthNameGen|февраля}} | 03 = {{#vardefine:sCurrentMonthNameGen|марта}} | 04 = {{#vardefine:sCurrentMonthNameGen|апреля}} | 05 = {{#vardefine:sCurrentMonthNameGen|мая}} | 06 = {{#vardefine:sCurrentMonthNameGen|июня}} | 07 = {{#vardefine:sCurrentMonthNameGen|июля}} | 08 = {{#vardefine:sCurrentMonthNameGen|августа}} | 09 = {{#vardefine:sCurrentMonthNameGen|сентября}} | 10 = {{#vardefine:sCurrentMonthNameGen|октября}} | 11 = {{#vardefine:sCurrentMonthNameGen|ноября}} | 12 = {{#vardefine:sCurrentMonthNameGen|декабря}} }} | {{#switch: {{#arrayindex:aDate|1}} | 01 = {{#vardefine:sCurrentMonthNameGen|января}} | 02 = {{#vardefine:sCurrentMonthNameGen|февраля}} | 03 = {{#vardefine:sCurrentMonthNameGen|марта}} | 04 = {{#vardefine:sCurrentMonthNameGen|апреля}} | 05 = {{#vardefine:sCurrentMonthNameGen|мая}} | 06 = {{#vardefine:sCurrentMonthNameGen|июня}} | 07 = {{#vardefine:sCurrentMonthNameGen|июля}} | 08 = {{#vardefine:sCurrentMonthNameGen|августа}} | 09 = {{#vardefine:sCurrentMonthNameGen|сентября}} | 10 = {{#vardefine:sCurrentMonthNameGen|октября}} | 11 = {{#vardefine:sCurrentMonthNameGen|ноября}} | 12 = {{#vardefine:sCurrentMonthNameGen|декабря}} }} | ||
{{#vardefine:sDayMonthName| {{#expr: {{#arrayindex:aDate|0}} + 0}} {{#var:sCurrentMonthNameGen}} }} | {{#vardefine:sDayMonthName| {{#expr: {{#arrayindex:aDate|0}} + 0}} {{#var:sCurrentMonthNameGen}} }} | ||
+ | {{#vardefine:sDayMonthNameGL| {{#var:sCurrentMonthNameGen}} {{#expr: {{#arrayindex:aDate|0}} + 0}} GL }} | ||
|{{#vardefine:sDayMonth| {{CURRENTDAY2}}.{{CURRENTMONTH}} }} | |{{#vardefine:sDayMonth| {{CURRENTDAY2}}.{{CURRENTMONTH}} }} | ||
{{#vardefine:sCurrentMonthNameGen| {{CURRENTMONTHNAMEGEN}} }} | {{#vardefine:sCurrentMonthNameGen| {{CURRENTMONTHNAMEGEN}} }} | ||
{{#vardefine:sDayMonthName| {{CURRENTDAY}} {{#var:sCurrentMonthNameGen}} }} | {{#vardefine:sDayMonthName| {{CURRENTDAY}} {{#var:sCurrentMonthNameGen}} }} | ||
+ | {{#vardefine:sDayMonthNameGL| {{#var:sCurrentMonthNameGen}} {{CURRENTDAY}} GL }} | ||
}} | }} | ||
{{#arraydefine:aYears}} | {{#arraydefine:aYears}} | ||
Строка 22: | Строка 24: | ||
{{#arraydefine:aBirthdays}} | {{#arraydefine:aBirthdays}} | ||
{{#arraydefine:aAllBirthdays| {{#ask: [[Категория:Персоналии]] [[День рождения::+]] | limit=500 | link=none | sep=SUPERMEGADELIMITER }} |SUPERMEGADELIMITER}} | {{#arraydefine:aAllBirthdays| {{#ask: [[Категория:Персоналии]] [[День рождения::+]] | limit=500 | link=none | sep=SUPERMEGADELIMITER }} |SUPERMEGADELIMITER}} | ||
− | {{#arrayprint:aAllBirthdays| |@@@@| {{# | + | {{#arrayprint:aAllBirthdays| |@@@@| {{#vardefine:sTemp| {{#show: @@@@ | ?День рождения }} }} {{#arraydefine:aTemp| {{#var:sTemp}} | {{#var:sDayMonthName}} }} {{#ifeq: {{#arraysize:aTemp}} | 2 | {{#if: {{#arrayindex:aTemp|0}} | | {{#arraydefine:aTemp|@@@@|SUPERMEGADELIMITER}} {{#arraymerge:aBirthdays|aBirthdays|aTemp}} }} | {{#ifeq: {{#var:sTemp}} | {{#var:sDayMonthNameGL}} | {{#arraydefine:aTemp|@@@@|SUPERMEGADELIMITER}} {{#arraymerge:aBirthdays|aBirthdays|aTemp}} | }} }} }} |
{{#vardefine:iReleases| {{#arraysize:aReleases}} }} | {{#vardefine:iReleases| {{#arraysize:aReleases}} }} | ||
{{#vardefine:iGames| {{#arraysize:aGames}} }} | {{#vardefine:iGames| {{#arraysize:aGames}} }} | ||
Строка 96: | Строка 98: | ||
{{#arrayprint:aBirthdays| |@@@@| | {{#arrayprint:aBirthdays| |@@@@| | ||
{{#arraydefine:aDate|{{#show: @@@@ | ?День рождения }}| {{#var:sCurrentMonthNameGen}} }} | {{#arraydefine:aDate|{{#show: @@@@ | ?День рождения }}| {{#var:sCurrentMonthNameGen}} }} | ||
− | {{#vardefine:iAge| {{#expr: {{CURRENTYEAR}} - {{#arrayindex:aDate|1}} }} }} | + | {{#ifeq: {{#arraysize:aDate}} | 2 | {{#vardefine:iAge| {{#expr: {{CURRENTYEAR}} - {{#arrayindex:aDate|1}} }} }} | }} |
− | <li>'''{{#ifeq: {{# | + | <li>'''{{#ifeq: {{#arraysize:aDate}} | 1 | Сколько-то лет назад | {{#var:iAge}} {{plural:{{#var:iAge}}|год назад|года назад|лет назад}} }}''' [[@@@@]]</li> |
}} | }} | ||
</ul> | </ul> |
Версия 16:05, 2 мая 2019
Шаблон, отображающий информацию о различных исторических событиях на конкретную дату. Показывает первые релизы проектов (свойство "Дата первого релиза"), релизы игр (свойство "Дата") и дни рождения (свойство "День рождения"), приходящиеся на заданный день года. В качестве необязательного аргумента может принимать дату в формате ДД.ММ, например, {{День в истории|13.09}}, информацию по которой надо показать. Без указания даты отображает информацию для текущего дня согласно настройкам сервера.
Примечание: Сейчас в IFВики 114 страниц со свойством "День рождения" в категории "Персоналии". Когда это число достигнет 500, реализованный в шаблоне алгоритм выявления дней рождения на конкретную дату перестанет работать корректным образом (будут теряться дни рождения за пределами первых 500) из-за лимита возвращаемого числа результатов функции встраиваемых запросов #ask. Потребуется изменение реализации.
Этот день в истории
Игры
21 мая вышло 5 игр:
- 2001 (23 года назад) Город и звёзды (Луконин, Дмитрий — URQ DOS)
- 2013 (11 лет назад) Побег (Колмаков, Павел — RInform)
- 2018 (6 лет назад) Замена (Leem — Атрил)
- 2020 (4 года назад) Когда Рак на горе свистнет (Казанцева Мария, Килина Анастасия, Тимершина Валентина — AXMA Story Maker)
- 2023 (1 год назад) Взлом сервера (Никифоров, Михаил — Аперо)