Module:Officeholder party tracking

From HasanistanPedia
Revision as of 14:20, 19 January 2022 by OIMGov (talk | contribs) (1 revision imported)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

Documentation for this module may be created at Module:Officeholder party tracking/doc

local p = {}

function p.tracking(frame)
	tcat = 'Category:Pages using infobox officeholder with an atypical party value'
    function isblank( val ) 
        return (val == nil) or val:match('^[%s]*$')
    end
	local function iswikilink(s)
		return s and s ~= ''
	end
	
	local pname = frame.args.party or ''
	if isblank(pname) then
		return ''
	end
	pname = mw.text.unstrip(pname)
	if pname:match('^%s*%[%[([^%[%]]*)%]%]%s*$') then
		return ''
	end
	tkey = pname:match('^%s*(.-)%s*$')
	tkey = mw.ustring.gsub(tkey, '[%[%]|]', '')
	tkey = mw.ustring.gsub(tkey, '[^%w\-_ ]', '?')
	return '[[' .. tcat .. '|' .. tkey .. ' ]]'
end

return p