Module:Check for unknown parameters: Difference between revisions
From the Croc Wiki, the Croc encyclopedia
Jump to navigationJump to search
Content added Content deleted
(various changes: add a trim function, remove unnecessary parens, don't check type for wikitext values (they are always strings), and don't use mw.ustring when the string library will do (it's a lot faster)) |
(add support for preview messages) |
||
Line 19: | Line 19: | ||
local knownargs = {} |
local knownargs = {} |
||
local unknown = 'Found _VALUE_, ' |
local unknown = 'Found _VALUE_, ' |
||
local preview = nil |
|||
local res = {} |
local res = {} |
||
Line 25: | Line 26: | ||
local commentstr = '' |
local commentstr = '' |
||
local ispreview = frame:preprocess( "{{REVISIONID}}" ) == "" and 1 or 0 |
|||
-- create the list of known args, regular expressions, and the return string |
-- create the list of known args, regular expressions, and the return string |
||
for k, v in pairs(args) do |
for k, v in pairs(args) do |
||
Line 30: | Line 33: | ||
v = trim(v) |
v = trim(v) |
||
knownargs[v] = 1 |
knownargs[v] = 1 |
||
elseif k == 'unknown' then |
elseif k == 'unknown' and ispreview == 0 then |
||
unknown = v |
unknown = v |
||
elseif k == 'preview' and ispreview == 1 then |
|||
preview = v |
|||
elseif k:find('^regexp[1-9][0-9]*$') then |
elseif k:find('^regexp[1-9][0-9]*$') then |
||
table.insert(regexps, '^' .. v .. '$') |
table.insert(regexps, '^' .. v .. '$') |
||
end |
end |
||
end |
end |
||
if ispreview == 1 and preview then unknown = preview end |
|||
-- adds one result to the output tables |
-- adds one result to the output tables |
||
local function addresult(k) |
local function addresult(k) |