Module:Check blp parameter explained

require('strict')local p =

p.main = function(frame) local args = frame:getParent.args local yesno = require('Module:Yesno') local current_title = mw.title.getCurrentTitle local pagetype = require('Module:Pagetype')._main

if pagetype

'user page' or args.category

'no' then -- bot does not run on user talk namespace return end

local templates = mw.loadData('Module:WikiProject banner/config').banner_shell.redirects local getparam = function(p) local TPVmodule = require('Module:Template parameter value').getParameter local success, param = TPVmodule(current_title.fullText, templates, p,) return success and param or nil end local check = function(p_table) local conflict = false local resolved for _, p in pairs(p_table) do local yn = yesno(p) -- check if "other" or "activepol" are set if p

'activepol' then yn = true -- activepol are living elseif p

'other' then yn = false -- other is treated as non-living end if yn

true or yn

false then -- parameter is set if resolved

nil then -- no resolved status yet resolved = yn -- resolve to parameter elseif yn~=resolved then -- resolved differs from parameter conflict = true end end end return resolved, conflict end local conflict, shell_resolved, bio_resolved, resolved shell_resolved, conflict = check if not conflict then bio_resolved, conflict = check if not conflict then resolved, conflict = check end end local out if conflict then out = 'Pages with conflicting living parameter' elseif shell_resolved

nil then if bio_resolved

nil then if pagetype

'article' then out = 'Biography articles without living parameter' end else out = 'Pages using WikiProject Biography which need living parameter transferring' end elseif shell_resolved

bio_resolved then out = 'Pages with redundant living parameter' end return out and '' or end

return p