Module:Check for deprecated parameters: Difference between revisions

Content deleted Content added
testing ignore blank
use if preview
 
(One intermediate revision by one other user not shown)
Line 13:
 
function p.check (frame)
-- create the table of deprecated values and their matching new value
local args = frame.args
local pargs = frame:getParent().args
local ignoreblank = isnotempty(frame.args['ignoreblank'])
local deprecated = frame.args['category']
local preview = frame.args['preview'] or 'Page using [['..frame:getParent():getTitle()..']] with deprecated parameter _VALUE_'
 
local dep_values = {}
local values = {}
local res = {}
 
-- create the table of deprecated values and their matching new value
for k, v in pairs(args) do
if k == 'ignoreblank' or k == 'preview' or k == 'deprecated' then else
dep_values[k] = v
end
end
if isnotempty(preview) then
preview = '<div class="hatnote" style="color:red"><strong>Warning:</strong> ' .. preview .. ' (this message is shown only in preview).</div>'
elseif preview == nil then
preview = deprecated
end
 
-- loop over the parent args and see if any are deprecated
local values = {}
local ignoreblank = isnotempty(frame.args['ignoreblank'])
local pargs = frame:getParent().args
for k, v in pairs(pargs) do
if ignoreblank then
Line 48 ⟶ 37:
end
end
 
-- add resulsresults to the output tables
local res = {}
if #values > 0 then
local preview = frame.args['preview'] or
if frame:preprocess( "{{REVISIONID}}" ) == "" then
local preview = frame.args['preview'] or 'Page using [['..frame:getParent():getTitle()..']] with deprecated parameter _VALUE_'
deprecated = preview
if isnotempty(preview) then
for k, v in pairs(values) do
preview = require('Module:If preview')._warning({
if v == '' then
preview
-- Fix odd bug for | = which gets stripped to the empty string and
end})
-- breaks category links
end
-- Kind of dangerous to trust that this is never nil, but I guess it's
-- preferable to display that the use of the module is broken rather than
-- have some sort of tracking category for pages which have an unknown
-- parent tracking template.
local deprecatedcategory = frame.args['category']
for k, v in pairs(values) do
local rc = deprecatedcategory:gsub('_VALUE_', v)
table.insert(res, rc)
if v == '' then
-- Fix odd bug for | = which gets stripped to the empty string and
-- and breaks category links
v = ' '
end
local r = deprecated:gsub('_VALUE_', ('"'..v..'". replace with "'..dep_values[v]..'"'))
table.insert(res, r)
end
else
for k, v in pairs(values) do
local r = deprecated:gsub('_VALUE_', v)
table.insert(res, r)
end
deprecatedlocal p = preview:gsub(
'_VALUE_',
local r = deprecated:gsub('_VALUE_', ('"'..v..'". replaceReplace with "'..dep_values[v]..'".'))
end)
table.insert(res, rp )
end
end