ЧТМ:Расширения/BatchTools/1.45/0.1: различия между версиями

Материал из ЧТМ
Перейти к навигации Перейти к поиску
Новая страница: «<markdown>## [0.1.0] — 2026-05-24 ### Добавлено - Создана служебная страница `Special:BatchTools` (с поддержкой ЧПУ-алиаса «Пакетные инструменты» на русском языке). - Реализована вкладка «Массовое удаление» для быстрой очистки ненужных страниц списком. - Реализована вкладка «...»
 
Нет описания правки
Строка 62: Строка 62:


== includes ==
== includes ==
=== SpecialBatchTools.php ===
<syntaxhighlight lang="json">
<syntaxhighlight lang="json">


</syntaxhighlight>
</syntaxhighlight>

Версия от 22:55, 29 мая 2026

[0.1.0] — 2026-05-24

Добавлено

  • Создана служебная страница Special:BatchTools (с поддержкой ЧПУ-алиаса «Пакетные инструменты» на русском языке).
  • Реализована вкладка «Массовое удаление» для быстрой очистки ненужных страниц списком.
  • Реализована вкладка «Массовое восстановление» для группового возврата ранее удалённых страниц.
  • Добавлены новые права доступа: deletebatch (для удаления) и undeletebatch (для восстановления).
  • Интегрирована локализация интерфейса на английском (en) и русском (ru) языках.

Безопасность и ограничения

  • Добавлена проверка прав пользователя (Authority) перед выполнением любых операций.
  • Реализована защита от межсайтовой подделки запросов (CSRF) с помощью механизма Edit Token ядра MediaWiki.
  • Введено ограничение на размер пакета: за одну операцию допускается обрабатывать не более 500 страниц.
  • Реализовано экранирование имён страниц при выводе ошибок для предотвращения уязвимостей типа XSS.

ROOT

extension.json

{
	"name": "BatchTools",
	"version": "0.1",
	"author": "Diman Russkov",
	"descriptionmsg": "batchtools-desc",
	"type": "specialpage",
	"manifest_version": 2,
	"requires": {
		"MediaWiki": ">= 1.45.0"
	},
	"AvailableRights": [
		"deletebatch",
		"undeletebatch"
	],
	"SpecialPages": {
		"BatchTools": "MediaWiki\\Extension\\BatchTools\\SpecialBatchTools"
	},
	"AutoloadNamespaces": {
		"MediaWiki\\Extension\\BatchTools\\": "includes/"
	},
	"MessagesDirs": {
		"BatchTools": [
			"i18n"
		]
	},
	"ExtensionMessagesFiles": {
		"BatchToolsAlias": "i18n/BatchTools.alias.php"
	}
}

i18n

en.json

ru.json

includes

SpecialBatchTools.php