Дополнительные действия
Этому шаблону не хватает документации. Вы можете помочь проекту, сделав описание шаблона: что он делает, как его использовать, какие параметры он принимает. Это поможет другим использовать его. Для оформления можете воспользоваться {{doc}} или {{doc-inline}}. Не забывайте помещать описание внутрь <noinclude></noinclude>. P.S. Также не забываем про категорию. |
local Infobox = {}
-------------------------------------
-- Библиотеки и глобальные функции --
-------------------------------------
-- обозначает высокочастотный
local HF = require('Module:HF')
-- Анализирует параметры вызова и шаблона, удаляет пробелы и удаляет пробелы.
local getArgs = require('Module:Arguments').getArgs
-- Создает списки
local L = require('Module:List')
-- Языковые функции
local language = mw.language.new('ru')
-- Шаблон Константы
local stripLinkToTarget = '^%[*([^%[|]*)|?'
-- Заголовок любой страницы, вызывающей функцию
local pageTitle = mw.title.getCurrentTitle().text
-----------------------------------------------------------
-- Локальные функции (используются только в этом модуле) --
-----------------------------------------------------------
local function nameCheck ( target )
local nq = mw.smw.ask{ HF.Link(target:match(stripLinkToTarget)), '?Обслуживание' }
if type(nq) == 'table'
and (nq[1]['Обслуживание'] == 'Название'
or (
type(nq[1]['Обслуживание']) == 'table'
and table.concat(nq[1]['Обслуживание']):match('Название')
)
)
then
return true
else
return nil
end
end
---------------------------------------------------------
-- Открытые функции (вызываются из шаблона или статьи) --
---------------------------------------------------------
function Infobox.titleTeam(frame)
local args = getArgs(frame)
local out = {}
if mw.title.getCurrentTitle().isContentPage == true then
table.insert( out, HF.Category('Команды по алфавиту') )
if args['безымянный'] == 'Да' then
mw.smw.set{ ['Обслуживание'] = 'Название' }
table.insert( out, ("''%s''"):format( pageTitle:match("%s*[^(]*") ) )
else
table.insert( out, pageTitle:match("%s*[^(]*") )
end
mw.smw.set { ['Название'] = pageTitle:gsub(''',"'") }
return table.concat( out ) .. ( args['ref'] or '' )
elseif mw.title.getCurrentTitle().namespace == 10
and not pageTitle:match('/testcases') then
return nil
else
return args['english'] or pageTitle:match("[^(]*")
end
end
-------------------------------------------------------------------
-- Экспортируемые функции (используются в этом и других модулях) --
-------------------------------------------------------------------
-- Нет.
-------------------------------------------------
-- Вывод (отправьте его обратно как угодно) --
-------------------------------------------------
return Infobox