Модуль:Галоўная старонка
Дакумэнтацыя модулю[прагляд] [рэдагаваць] [гісторыя] [абнавіць]
local p = {}
local function parseWikistatsData()
local dataTitle = mw.title.makeTitle( "Template", "NUMBEROF/data" )
local rawData = dataTitle:getContent()
local data = {}
for code, articles in mw.ustring.gmatch( rawData, "| ([%l%-]+).-| NUMBEROFARTICLES | ARTICLES = (%d+)" ) do
if tonumber( articles ) >= 250000 and code ~= "total" then table.insert( data, { ["code"] = code, ["articles"] = tonumber( articles ) } ) end
end
table.sort( data, function( a, b )
return ( a.articles > b.articles )
end )
return data
end
function p.otherWikipedias()
local data = parseWikistatsData()
local wiki250, wiki500, wiki1000 = {}, {}, {}
local wiki250s, wiki500s, wiki1000s = "", "", ""
for i, wiki in ipairs( data ) do
local langAutonymName = mw.language.fetchLanguageName( wiki.code )
local langName = mw.language.fetchLanguageName( wiki.code, "be-tarask" )
local insertStr = '{{nowrap|[[:' .. wiki.code .. ':|' .. langAutonymName .. ' (' .. langName .. ')]]}}'
if wiki.articles >= 1000000 then
table.insert( wiki1000, insertStr )
elseif wiki.articles >= 500000 then
table.insert( wiki500, insertStr )
else
table.insert( wiki250, insertStr )
end
end
wiki250s = table.concat( wiki250, "{{*}}" )
wiki500s = table.concat( wiki500, "{{*}}" )
wiki1000s = table.concat( wiki1000, "{{*}}" )
local msg = mw.message.new( "mainpage-otherwikis" )
return msg:params( wiki1000s, wiki500s, wiki250s ):text()
end
return p