Этот модуль создает окно сообщения, используемое для запроса изменений на защищенных страницах. Запросы на редактирование могут быть сделаны для полностью защищенных, защищенных шаблонами и полузащищенных страниц, а также можно запросить редактирование сразу для нескольких страниц.
Этот модуль следует использовать на странице обсуждения редактируемой страницы. Если вы не можете разместить его прямо на этой странице обсуждения, вы можете указать страницу для редактирования с позиционными параметрами. Вы также можете указать несколько страниц для редактирования, если это удобнее, чем создание нескольких запросов на редактирование в разных местах.
Синтаксис
Модуль имеет пять функций, по одной для каждого доступного уровня защиты:
Функция | Уровень защиты | Шаблон |
---|---|---|
interface | CSS / JS защита | {{ редактировать защищенный интерфейс }} |
full | Полная защита | {{ редактировать полностью защищенные }} |
template | Защита шаблона | {{ редактировать защищенный шаблоном }} |
extended | Расширенная подтвержденная защита | {{ редактировать расширенную-защищенную }} |
semi | Полузащита | {{ редактировать полузащищенные }} |
- Основное использование
{{#invoke: защищенный запрос на редактирование | функция }}
- Укажите страницы для редактирования
{{#invoke: защищенный запрос на редактирование | функция | Первая страница для редактирования | Вторая страница для редактирования | ...}}
- Деактивировать запрос
{{#invoke: защищенный запрос на редактирование | функция | ответила = да }}
- Принудительно установить уровень защиты запроса, а не разрешать автоматическое обнаружение
{{#invoke: защищенный запрос на редактирование | функция | force = yes }}
- Все параметры
{{#invoke: защищенный запрос на редактирование | функция | Первая страница для редактирования | Вторая страница для редактирования | Третья страница на редактировании | ...| ответил =| ans =| демо =| сила =}}
Категории
Шаблон классифицирует страницу в зависимости от уровня защиты редактируемых страниц.
Функция | Категория |
---|---|
interface | Категория: Запросы на редактирование, защищенные интерфейсом Википедии |
full | Категория: Полностью защищенные запросы на редактирование Википедии |
template | Категория: Запросы на редактирование, защищенные шаблонами Википедии |
extended | Категория: Википедия расширенные, подтвержденные, защищенные запросы на редактирование |
semi | Категория: Полузащищенные запросы на редактирование Википедии |
Модуль пытается определить уровень защиты используемых страниц. Если одна или несколько страниц не защищены или указано несколько страниц с разными уровнями защиты, страница попадает в категорию « Категория: запросы на редактирование Википедии, возможно, с использованием неправильных шаблонов» . В противном случае, если параметр force не установлен, ему автоматически присваивается правильный уровень защиты.
require ( 'Модуль: без глобальных переменных' )local yesno = require ( 'Модуль: Да нет' )local makeMessageBox = require ( 'Модуль: окно сообщения' ). основнойлокальный getArgslocal activeBox - лениво инициализируется, если мы получаем активный запрос-------------------------------------------------- --------------------- Определение класса коробки-------------------------------------------------- --------------------локальный ящик = {}коробка . __index = коробкафункциональная коробка . новый ( ProtectionType , args )local obj = {}OBJ . args = argssetmetatable ( объект , поле )OBJ . tmboxArgs = {} - используется для хранения аргументов, передаваемых tmbox методом box: export.- Установить поля данных.OBJ . tmboxArgs . attrs = { [ 'data-origlevel' ] = protectionType }вернуть объектконецфункциональное окно : setArg ( ключ , значение )- Устанавливает значение, которое будет передано tmbox.если ключ, тоя . tmboxArgs [ ключ ] = значениеконецконецфункциональное окно : экспорт ()если не мв . название . getCurrentTitle (). isTalkPage, а не себя . аргументы . демо тогдаreturn ' Ошибка: защищенные запросы на редактирование можно делать только на странице обсуждения. [[Категория: страницы без обсуждения с шаблоном запроса на редактирование]]'конец- Строка вместе предоставленных названий страницместные названия = {}для k , v в парах ( self . args ) делаемесли type ( k ) == 'number', тоtable.insert ( заголовки , self . args [ k ])конецконецлокальные страницы Текстесли # заголовков == 0, тоpagesText = ''ELSEIF # названия == 1 и MW . название . getCurrentTitle (). subjectPageTitle . Полный текст == названия [ 1 ] тогдаpagesText = ''еще для i , v в парах ( названиях ) делаем если я == 1, то pagesText = 'к [[:' .. v .. ']]' elseif i == # заголовков, тогда pagesText = pagesText .. 'и [[:' .. v .. ']]' еще pagesText = pagesText .. ', [[:' .. v .. ']]' конецконецконецself : setArg ( 'smalltext' , "Это [[Википедия: запросы на редактирование | запрос на редактирование]]" .. pagesText .."получен ответ. Установите
\" white-space: nowrap; \ " > & # 124; ответил & # 61; или
\" white-space: nowrap; \ " > & # 124; ans & # 61; в '' 'no' '', чтобы повторно активировать ваш запрос." )self : setArg ( 'маленький' , правда )сам : setArg ( 'класс' , 'editrequest' )вернуть makeMessageBox ( 'tmbox' , self . tmboxArgs )конец-------------------------------------------------- --------------------- Обрабатывать аргументы и инициализировать объекты-------------------------------------------------- --------------------местный p = {}функция p . _main ( тип защиты , аргументы )local boxType = коробкаесли не YesNo ( Args . отвеченные вопросы или Args . анс , правда ) , тоесли не activeBox, тоactiveBox = require ( 'Модуль: защищенный запрос на редактирование / активный / песочница' ) ( box , yesno , makeMessageBox )конецboxType = activeBoxконецлокальная requestBox = boxType . новый ( ProtectionType , args )вернуть requestBox : export ()конецместный mt = {}функция mt . __index ( t , k )если не getArgs, тоgetArgs = require ( 'Модуль: аргументы' ). getArgsконец функция возврата ( фрейм )возврат т . _main ( k , getArgs ( frame , { wrappers = { 'Шаблон: Редактировать полностью защищенный' , 'Шаблон: Редактировать полузащищенный' , 'Шаблон: Редактировать защищенный шаблоном' , 'Шаблон: Редактировать расширенный-защищенный » , ' Шаблон : Редактировать interface-protected ' }}))конецконецвернуть setmetatable ( p , mt )