Module:Vital article
Appearance
![]() | This module is rated as beta, and is ready for widespread use. It is still new and should be used with some caution to ensure the results are as expected. |
![]() | This module is subject to page protection. It is a highly visible module in use by a very large number of pages, or is substituted very frequently. Because vandalism or mistakes would affect many pages, and even trivial editing might cause substantial load on the servers, it is protected from editing. |
Usage
This module implements the following templates:
Please refer to those templates' documentation.
local p = {}
p.link = function(frame)
local page = frame.args.page or mw.title.getCurrentTitle().subjectPageTitle.text
local subpage = mw.ustring.upper(mw.ustring.sub(page, 1, 1)) -- get first letter of article name
local codepoint = mw.ustring.codepoint(page, 1, 1)
if codepoint<65 or codepoint>90 then --first letter is not between A-Z
subpage = 'others'
end
local data_page = 'Wikipedia:Vital articles/data/' .. subpage .. '.json'
local data = mw.loadJsonData(data_page)[page]
if data then
local level = tostring(data.level)
if level then
local link = 'Wikipedia:Vital articles/Level/' .. level
if (level=='4' or level=='5') and data.topic then
link = link .. '/' .. data.topic
end
if data.sublist then
link = link .. '/' .. data.sublist
end
--if data.section then -- not used until we have stable section anchors to link to
-- link = link .. '#' .. data.section
--end
if not mw.title.new(link).exists then -- add tracking category if link does not exist
link = link .. '[[Category:Wikipedia vital articles with an incorrect link]]'
end
return '[[File:Círculos Concéntricos.svg|16px|link=|alt=]] This <b>[[' .. link .. '|level-' .. level .. ' vital article]]</b> '
end
end
end
return p