Постоянно защищенный модуль
Из Википедии, бесплатной энциклопедии
Перейти к навигации Перейти к поиску
Документация по модулю [ просмотреть ] [ изменить ] [ историю ] [ очистить ]

Этот модуль используется {{ Reply to }}, чтобы инициировать уведомление для одного или нескольких зарегистрированных пользователей, которым вы отвечаете в обсуждении.

Использование из вики-текста

Этот модуль нельзя использовать напрямую из викитекста. Вместо этого используйте шаблон {{ Ответить }}.

Использование в шаблонах

{{#invoke: Reply to | replyto | <noinclude> example = example name </noinclude> | max = максимальное количество имен }}
  • |example=Параметр задает имя , которое будет отображаться , когда страница шаблона просматривается. Этот параметр должен быть окружен <noinclude>...</noinclude>так, чтобы он не включался в родительский шаблон, и родительский шаблон будет отображать сообщение об ошибке, если имена не указаны.
  • |max=Параметр задает максимальное количество имен , что шаблон будет принимать. Если не указано, по умолчанию используется значение 50 (это максимальное число, которое Echo поддерживает в настоящее время по состоянию на август 2015 года ). Если это количество имен будет превышено, родительский шаблон вернет сообщение об ошибке.

местный  p  =  {}локальная  функция  makeError ( msg )msg  = 'Ошибка в [[Template: Reply to]]:'  ..  msgвернуть  мв . текст . тег ( 'сильный' ,  {[ 'класс' ] = 'ошибка' },  сообщение )конецфункция  p . replyto ( кадр )local  origArgs  =  frame : getParent (). аргументыместные  аргументы  =  {}локальный  maxArg  =  1локальные  имена пользователей  =  0для  к ,  V  в  паре ( origArgs )  делаетесли  type ( k )  ==  'number',  тоесли  мв . ustring . match ( v , '% S' ),  затемесли  k  >  maxArg,  то  maxArg  =  k  endимена пользователей  =  имена пользователей  +  1местное  название  =  mw . название . новый ( v )если  не  заголовок,  то  верните  makeError ( 'Ввод содержит запрещенные символы.' )  endargs [ k ]  =  заголовок . rootTextконецelseif  v  ==  ''  и  k : sub ( 0 , 5 )  ==  'label',  тогдаargs [ k ]  =  '& # x200B;'ещеargs [ k ]  =  vконецконецесли  имена пользователей  >  ( tonumber ( frame . args . max )  или  50 ),  товернуть  makeError ( string.format ("Указано более% s имен." ,tostring ( фрейм . аргументы . макс.  или  50 )))ещеесли  имена пользователей  <  1,  тоесли  рамка . аргументы . пример  тогда  args [ 1 ]  =  frame . аргументы . пример  else  return  makeError ( 'Имя пользователя не указано.' )  endконецargs [ 'label1' ]  =  args [ 'label1' ]  или  args [ 'label' ]местный  isfirst  =  truelocal  outStr  =  args [ 'префикс' ]  или  '@'для  я  =  1 ,  maxArg  делатьесли  args [ i ],  тоесли это во-  первых,  тоisfirst  =  falseещеif  (  ( usernames  >  2 )  or  (( usernames  ==  2 )  and  ( args [ 'c' ]  ==  '' ))  )  then  outStr  =  outStr .. ','  endесли  i  ==  maxArg,  то  outStr  =  outStr .. '' .. ( args [ 'c' ]  или  'and' )  ..  ''  конецконецoutStr  =  string.format ('% s [[Пользователь:% s |% s]]]' ,outStr ,args [ i ],args [ 'label' .. tostring ( i )]  или  args [ i ])конецконецoutStr  =  outStr .. ( аргументы [ 'p' ]  или  ':' )вернуть  мв . текст . тег ( 'диапазон' ,  {[ 'класс' ] = 'шаблон-пинг' },  outStr )конецконецвернуть  p