Module:Progress pie chart

require('strict')

local p = {} --p stands for package

local getArgs = require('Module:Arguments').getArgs local yesno = require('Module:Yesno') local chart = require('Module:Graph').chart

function p._progress_pie_chart(args) -- args local size = args.size or 120 local legend if yesno(args.no_legend or 'no') then legend = 0 else legend = args.legend or "Legend" end local existing_only = yesno(args.existing_only or 'no') local x = "Validated,Proofread,Problematic,Not Proofread,Without text" if not existing_only then x = x .. ",Not yet created" end local total = tonumber(args.total) or 0 local validated = tonumber(args.validated) or 0 local proofread = tonumber(args.proofread) or 0 local problematic = tonumber(args.problematic) or 0 local not_proofread = tonumber(args.not_proofread) or 0 local notext = tonumber(args.notext) or 0 local statuses = { validated, proofread, problematic, not_proofread, notext }	if not existing_only then table.insert(statuses, total - (validated + proofread + problematic + not_proofread + notext)) end local y1 = table.concat(statuses, ",") local colors = args.colors or "#80FF80,#FFFF80,#B0B0FF,#FFA0A0,#DDDDDD,#FFFFFF" -- chart local chartArgs = { width = size, height = size, ['type'] = "pie", legend = legend, x = x,		y1 = y1, colors = colors, linecolor = "#a0a0a0" }	return chart({args = chartArgs}) end

function p.progress_pie_chart(frame) return p._progress_pie_chart(getArgs(frame)) end

return p