Modulo:Sandbox/Sakretsu: differenze tra le versioni

Contenuto cancellato Contenuto aggiunto
+
+
 
(10 versioni intermedie di uno stesso utente non sono mostrate)
Riga 1:
local p = {}
 
local function p.maingetTrackLength(framedurata)
local splits = mw.text.split(durata, ':', true)
local content = mw.title.new('Wikipedia:Amministratori/Sistema_di_voto/Quorum'):getContent()
local quorumore = tonumber(splits[#splits-2]) or 0
local minuti = tonumber(splits[#splits-1]) or 0
local pages, users = {}, {}
local secondi = tonumber(splits[#splits]) or 0
for page in string.gmatch(content, '%[%[(W%a+:Amministratori/Elezioni/.-)[|%]]') do
return ore * 60 * 60 + minuti * 60 + secondi
table.insert(pages, page)
local user = page:match('Elezioni/([^/]+)')
table.insert(users, string.format('[[User:%s|%s]]', user, user))
end
if #pages ~= 8 then
return error('Non è stato trovato un elenco di 8 votazioni distinte nella pagina')
end
for _, page in ipairs(pages) do
content = mw.title.new(page):getContent()
if not content then
return error('Non è stata trovata la pagina della votazione ' .. page)
end
content = content:gsub('(\n==+ *[^\n]- *==+)', '\r%1')
for heading, section in string.gmatch(content, '\n==+ *([^\n]-) *==+(.-)\r') do
if heading == 'Pro' or heading == 'Contro' then
local _, count = section:gsub('\n#[^#:*\n][^\n]-%a', '')
quorum = quorum + count
end
end
end
users = mw.text.listToText(users, ', ', ' e ')
quorum = math.floor(quorum / 12)
return string.format('Pertanto il quorum per la prossima votazione, calcolato in base al numero di favorevoli e contrari nelle votazioni relative a %s, è pari a <b>%s</b>.', users, quorum)
end