Module:Check for unknown parameters: Difference between revisions

rv, requires more testing
No edit summary
(rv, requires more testing)
Line 17:
 
local res = {}
local regexps = {}
local comments = {}
local commentstr = ''
-- create the list of known args, regular expressions, and the return string
for k, v in pairs(args) do
if type(k) == 'number' then
Line 29 ⟶ 28:
if (k == 'unknown' and type(v) == 'string') then
unknown = v
elseif (k:match('^regexp[%d]*$') and type(v) == 'string') then
table.insert(regexps, '^' .. v .. '$')
end
end
Line 38 ⟶ 35:
for k,v in pairs(pargs) do
if (type(k) == 'string' and knownargs[k] == nil) then
if( (not knownflag) and (not ignoreblank) or (ignoreblank and isnotempty(v)) ) then
local knownflag = nil
for r = 1,#regexps do
if( k:match(regexps[r]) ) then
knownflag = 1
end
end
if( (not knownflag) and (not ignoreblank) or (ignoreblank and isnotempty(v)) ) then
k = mw.ustring.gsub(k, '[^%w\-_ ]', '?')
local r = mw.ustring.gsub(unknown, '_VALUE_', k)
Anonymous user