Модуль:Hatnote: различия между версиями

Перейти к навигации Перейти к поиску
imported>Wikisaurus
(использовать стандартную функцию mw.text.listToText вместо самодельного кода)
imported>Wikisaurus
(поддержка {{основная статья|{{не переведено|...}}}})
Строка 9: Строка 9:
no_links = 'ЭАНМ:Страницы с модулем Hatnote без ссылок',
no_links = 'ЭАНМ:Страницы с модулем Hatnote без ссылок',
red_link = 'ЭАНМ:Страницы с модулем Hatnote с красной ссылкой',
red_link = 'ЭАНМ:Страницы с модулем Hatnote с красной ссылкой',
bad_format = 'ЭАНМ:Страницы с модулем Hatnote с некорректно заполненными параметрами'
bad_format = 'ЭАНМ:Страницы с модулем Hatnote с некорректно заполненными параметрами',
formatted = 'ЭАНМ:Страницы с модулем Hatnote с готовым форматированиеми',
}
}


Строка 119: Строка 120:
local tracked = {
local tracked = {
red_link = false,
red_link = false,
bad_format = false
bad_format = false,
formatted = false,
}
}
Строка 127: Строка 129:
local label = args['l' .. i]
local label = args['l' .. i]
tracked.bad_format = tracked.bad_format or link:match('|') or link:match('[%[%]]')
local element = ''
 
if link:match('<span') then -- TODO: переписать
link, label = parse_link(link, label)
tracked.formatted = true
element = link -- for {{не переведено}}
if links_ns then
else
label = label or link
tracked.bad_format = tracked.bad_format or link:match('|') or link:match('[%[%]]')
link = mw.site.namespaces[links_ns].name .. ':' .. link
link, label = parse_link(link, label)
if links_ns then
label = label or link
link = mw.site.namespaces[links_ns].name .. ':' .. link
end
tracked.red_link = tracked.red_link or not mw.title.new(link).exists
element = p.format_link{link, nil, label}
end
end
tracked.red_link = tracked.red_link or not mw.title.new(link).exists
local element = p.format_link{link, nil, label}
if bold_links then
if bold_links then
element = string.format('<b>%s</b>', element)
element = string.format('<b>%s</b>', element)
Строка 204: Строка 212:
if list.bad_format then
if list.bad_format then
categories:add('bad_format', nocat)
categories:add('bad_format', nocat)
end
if list.formatted then
categories:add('formatted', nocat)
end
end