Шаблон:ChangelogItem: различия между версиями

Нет описания правки
 
(не показаны 32 промежуточные версии этого же участника)
Строка 8: Строка 8:
Кроме этого, если страницу, куда был вставлен шаблон, вызвать с параметром-моделью, то шаблон ChangelogItem выведет только те изменения, которые затрагивают это устройство. Таким образом формируется список изменений для модели. Можно передать только одну модель.
Кроме этого, если страницу, куда был вставлен шаблон, вызвать с параметром-моделью, то шаблон ChangelogItem выведет только те изменения, которые затрагивают это устройство. Таким образом формируется список изменений для модели. Можно передать только одну модель.


Проверка ошибок. Так же для каждой линейки есть инклюд с перечнем поделей, который вставлен в общий список изменений, чтобы было удобно копировать названия, а ещё с использованием этого инклюда происходит проверка написания модели. Если модель написана неверно, снизу пункта будет выведено текущее написание, окрашенное в красный цвет. Для проверки используется [[Шаблон: Check]].
Проверка ошибок. Так же для каждой линейки есть инклюд с перечнем поделей, который вставлен в общий список изменений, чтобы было удобно копировать названия, а ещё с использованием этого инклюда происходит проверка написания модели. Если модель написана неверно, снизу пункта будет выведено текущее написание, окрашенное в красный цвет. Для проверки используется [[Шаблон: Check]], который ищет по инклюду [[Wbincludes: CheckModels]].


=== Живые примеры использования ===
=== Живые примеры использования ===
Строка 16: Строка 16:
* [[WB-MR6C v.3: Changelog]] — страница со списком изменений в прошивке реле WB-MR6C v.3
* [[WB-MR6C v.3: Changelog]] — страница со списком изменений в прошивке реле WB-MR6C v.3


== Инструкции==
== Программисту ==
=== Для программиста ===
{{Anchor|coder}}
=== Что делать ===
Так как списки изменений разбиты по типам устройств (реле, датчики и т.п.), то надо определиться, куда мы будем писать изменения, потом:
Так как списки изменений разбиты по типам устройств (реле, датчики и т.п.), то надо определиться, куда мы будем писать изменения, потом:
# Открыть инклюд общего списка изменения для нужного типа устройств, [[Список_шаблонов#changelogs |список инклюдов]].
# Открыть инклюд общего списка изменения для нужного типа устройств, [[Список_шаблонов#changelogs |список инклюдов]].
# Внести по образцу новый пункт, указать: версию прошивки, дату релиза, наименования затронутых моделей через запятую и заполнить описание в теге ''content''.
# Внести по образцу новый пункт, указать:  
#* release — статус прошивки testing/stable
#* version — версия прошивки
#* date — дата выпуска прошивки в русском формате ДД.ММ.ГГГГ
#* models — наименования затронутых моделей через запятую с подчеркиванием на конце, например, <code>WB-MR6C_</code>
#* content — описание изменения, можно использовать форматированный текст, картинки и галереи.


Пример записи, параметр <code>{{{1}}}</code> не удалять — это для индивидуального списка:
Параметр <code>{{{1}}}</code> не удалять — это для индивидуального списка.
 
Стараемся выдержать одинаковый стиль: добавлено, исправлено и т.п. Если где-то написано по-другому — поправь.
 
=== Прошивка из testing ===
Пример:
:<syntaxhighlight lang="wiki">
{{ChangelogItem
| {{{1}}}
| release = testing
| version = 1.18.4
| date = 26.04.2022
| models = WB-MR6C_, WB-MR6C v.2_, WB-MR6C v.3_
| content=
Добработка безопасного режима
}}
</syntaxhighlight>
 
[[Image: ChangelogItemResultTesting.png |900px|thumb| center | Запись о тестовой версии прошивки]]
 
=== Прошивка из stable ===
То же самое, что и для testing, но нужно указать <code>release = stable</code>:
:<syntaxhighlight lang="wiki">
:<syntaxhighlight lang="wiki">
{{ChangelogItem
{{ChangelogItem
| {{{1}}}
| {{{1}}}
| release = stable
| version = 1.18.4
| version = 1.18.4
| date = 26.04.2022
| date = 26.04.2022
| models = WB-MR6C v.2, WB-MR6C v.3, WB-MR6C/NC v.1
| models = WB-MR6C_, WB-MR6C v.2_, WB-MR6C v.3_
| content=
| content=
Добработка безопасного режима
Добработка безопасного режима
}}
}}
</syntaxhighlight>
</syntaxhighlight>
[[Image: ChangelogItemResult.png |900px|thumb| center | Запись о стабильной версии прошивки]]


Актуальный перечень моделей для выбранного типа устройств доступен внизу страницы изменений прошивки.  
=== Готовый список моделей ===
[[Image: ChangelogItemModels.png |900px|thumb| center]]
Актуальный список моделей для выбранного типа устройств смотрите внизу общей страницы изменений в прошивке.  
[[Image: ChangelogItemModels.png |900px|thumb| center | Список моделей для реле]]


=== Обработка ошибок в названии модели ===
Если модель указана неверно, она будет продублирована под описанием изменения и окрашена в красный цвет.
Если модель указана неверно, она будет продублирована под описанием изменения и окрашена в красный цвет.
[[Image: ChangelogItemError.png |900px|thumb| center ]]
[[Image: ChangelogItemError.png |900px|thumb| center | В названии модели ошибка]]
 
Верный пунт списка изменения будет выглядеть примерно так::
[[Image: ChangelogItemResult.png |900px|thumb| center]]


=== Для техписателя ===
== Техписателю ==
При выходе новой модели устройства:
При выходе новой модели устройства:
# Добавить название модели в инклюд, по которому происходит проверка правильности написания модели. [[Список_шаблонов#changelogs |Список инклюдов]].
# Добавить название модели в инклюд, по которому происходит проверка правильности написания модели. [[Список_шаблонов#changelogs |Список инклюдов]].
Строка 49: Строка 77:
#:Например, страница [[WB-MR6C v.3: Changelog]] выглядит так:
#:Например, страница [[WB-MR6C v.3: Changelog]] выглядит так:
#:<syntaxhighlight lang="wikitext">
#:<syntaxhighlight lang="wikitext">
{{DISPLAYTITLE: Изменения в прошивке WB-MR6C v.3 }}
{{DISPLAYTITLE: Изменения в прошивке WB-MR6C v.3}}
== Общее ==
== Общее ==
{{Wbincludes:Changelog Update Devices}}
{{Wbincludes:Changelog Update Devices}}


== Список изменений ==
== Список изменений ==
{{Wbincludes:WB-MR: Changelog|WB-MR6C v.3}}
{{Wbincludes:WB-MR: Changelog|WB-MR6C v.3_}}
</syntaxhighlight>
</syntaxhighlight>
</noinclude><includeonly>{{#vardefine:TryResult
</noinclude><includeonly>{{#vardefine:IsTesting
| '''{{{version}}} ({{{date}}})'''
|    {{#ifeq: {{{release}}} | testing | — <i>доступно в [[WB_Modbus_Devices_Firmware_Update|testing]]}}</i>
}}{{#vardefine:TryResult
| '''{{{version}}} ({{{date}}})''' {{#var:IsTesting}}
   
   
{{{content}}}
{{{content}}}
}}{{#vardefine:FalseResult
}}{{#vardefine:FalseResult
| '''{{{version}}} ({{{date}}})'''  
| '''{{{version}}} ({{{date}}})''' {{#var:IsTesting}}


<div class="text-gray">Без изменений для этого устройства.</div>
<div class="text-gray">Без изменений для этого устройства.</div>
}}
}}
{{#ifexpr: {{#len:{{{1}}}}} > 7
{{#ifexpr: {{#count:{{{1}}}|WB}}>0
| {{#ifexpr: {{#count:{{{models}}}|{{{1}}}}} > 0 | {{#var:TryResult}}|{{#var:FalseResult}}}}
| {{#ifexpr: {{#count:{{{models}}}|{{{1}}}}} = 1 | {{#var:TryResult}}|{{#var:FalseResult}} }}
| {{#var:TryResult}}
| {{#var:TryResult}}


<div class="text-gray">''{{{models}}}''</div>
<div class="text-gray">''{{{models}}}''</div>


{{#ifexpr: {{#count:{{{models}}}|WB-MR}} > 0 | {{Check|{{{models}}}|{{Wbincludes:WB-MR Models}}}}|<div class="hidden"></div>}}
{{Check|{{{models}}}|{{Wbincludes:CheckModels}} }}
}}</includeonly>
}}</includeonly>