Модуль:Огляд мов
Документацію для цього модуля можна створити у Модуль:Огляд мов/документація
local p = {}
local raus = ""
function p.main(frame)
args = frame.args
args1 = {}
if args[1] then s = args[1]
for w in (s..","):gmatch("([^,]+), *") do
table.insert(args1, w)
end
end
sumo = 0
Lingvoj = args1
Superrigardo = { }
Geszahl = mw.site.stats.articles
local root = mw.html.create('table')
root:addClass('wikitable sortable zebra centered')
root:css('text-align','right')
tagtr = root:tag('tr')
:tag('th')
:tag('th')
:wikitext('Мова/категорія')
:tag('th')
:wikitext('Слів')
:tag('th')
:addClass('unsortable')
:wikitext('Відсоток')
if args[2] then
tagtr:tag('th')
:addClass('unsortable')
:wikitext(args[2])
end
tagtr = root:tag('tr')
:addClass('unsortable')
:tag('th')
:tag('th')
:wikitext('Загалом слів')
:tag('th')
:wikitext(Geszahl)
:tag('th')
:wikitext('100,00 ')
if args[2] then
tagtr:tag('th')
:addClass('unsortable')
:wikitext(' ')
end
for k, Sprache in ipairs(Lingvoj) do
Superrigardo[k] = {k, mw.site.stats.pagesInCategory(Sprache,"pages")}
end
table.sort(Superrigardo, function (k1, k2) return k1[2]>k2[2] end )
zaehler = 1
for k,Ue in ipairs(Superrigardo) do
link = mw.title.new("Категорія:" .. Lingvoj[Ue[1]])
tagtr = root:tag('tr')
:tag('td')
:wikitext(zaehler .. ".")
:tag('td')
:css('text-align','left')
-- :wikitext(string.format( "[%s %s]", tostring(link:fullUrl()), Lingvoj[Ue[1]]))
:wikitext("[[:Категорія:" .. Lingvoj[Ue[1]] .. "|" .. Lingvoj[Ue[1]] .. "]]")
:tag('td')
:wikitext(Ue[2])
:tag('td')
:wikitext(string.format("%.2f",Ue[2]/Geszahl*100))
if args[2] then
tagtr:tag('td')
:addClass('unsortable')
:css('text-align','left')
:wikitext("[[" .. mw.title.getCurrentTitle().prefixedText .. "/" .. args[2] .. " (" .. Lingvoj[Ue[1]] .. ")|" .. args[2] .. "]]")
end
zaehler = zaehler + 1
sumo = sumo + Ue[2]
end
if frame.args.Sumo then
tagtr = root:tag('tr')
tagtr:tag('td')
:wikitext("")
tagtr:tag('td')
:css('text-align','left')
-- :wikitext(string.format( "[%s %s]", tostring(link:fullUrl()), Lingvoj[Ue[1]]))
:wikitext("'''Sumo'''")
tagtr:tag('td')
:wikitext(sumo)
tagtr:tag('td')
:wikitext(string.format("%.2f",sumo/Geszahl*100))
end
return tostring(root)
end
return p