Modul:Index progress
Aspect
| Acest format utilizează Lua: |
Logică pentru {{bară progres index}} și {{diagramă progress index}}
require('strict')
--[=[
This is a module to extract data from the ProofreadPage Lua API and feed it into a progress bar
]=]
local p = {} --p stands for package
local getArgs = require('Module:Arguments').getArgs
local proofreadPage = require('mw.ext.proofreadPage')
local yesno = require('Module:Yesno')
local error_message = require('Module:Error')['error']
local progress_bar = require('Module:Progress bar')._progress_bar
local progress_pie_chart = require('Module:Progress pie chart')._progress_pie_chart
--[=[
Map ProofreadPage Lua index progress to progress_bar
]=]
function p.bar(frame)
local args = getArgs(frame)
if not args or not args[1] then
return error_message({'[[Modul:Index progress]] error: no index provided'})
end
local idx = args[1]:gsub('^Index:', '')
local index = proofreadPage.newIndex(idx)
if not index then
return error_message({'[[Modul:Index progress]] error: index not found'})
end
local barArgs = {
['total'] = index.pageCount,
['fără text'] = index:pagesWithLevel(0),
['neverificate'] = index:pagesWithLevel(1),
['problematice'] = index:pagesWithLevel(2),
['verificate'] = index:pagesWithLevel(3),
['validate'] = index:pagesWithLevel(4),
['înălțime'] = args.height or args['înălțime'],
['lățime'] = args.width or args['lățime'],
['doar_existente'] = args.existing_only or args.doar_existente
}
return progress_bar(barArgs)
end
--[=[
Map ProofreadPage Lua index progress to progress_pie_chart and return the expanded template
]=]
function p.pie(frame)
local args = getArgs(frame)
if not args or not args[1] then
return error_message({'[[Modul:Index progress]] error: no index provided'})
end
local idx = args[1]:gsub('^Index:', '')
local index = proofreadPage.newIndex(idx)
if not index then
return error_message({'[[Modul:Index progress]] error: index not found'})
end
local pieArgs = {
['total'] = index.pageCount,
['fără text'] = index:pagesWithLevel(0),
['neverificate'] = index:pagesWithLevel(1),
['problematice'] = index:pagesWithLevel(2),
['verificate'] = index:pagesWithLevel(3),
['validate'] = index:pagesWithLevel(4),
['doar_existente'] = args.doar_existente or args.existing_only,
['fără_legendă'] = args.no_legend or args['fără_legendă'],
['dimensiune'] = args.size or args.dimensiune
}
return progress_pie_chart(pieArgs)
end
return p