Jump to content

Module:Taxonbar/exists: Difference between revisions

From Wikipedia, the free encyclopedia
Content deleted Content added
Return 'commented' if <!--{{Taxonbar}}-->, per Template talk:Taxonbar#'Exists' module misses cases where the taxonbar is commented out, from sandbox
Line 2: Line 2:


function p.check( frame )
function p.check( frame )
local pagename = mw.title.getCurrentTitle().baseText
local pagename = mw.title.getCurrentTitle().text
local content = mw.title.new(pagename):getContent() or ''
local content = mw.title.new(pagename):getContent() or ''
local getRegex = require('Module:Template redirect regex').main
local getRegex = require('Module:Template redirect regex').main
Line 9: Line 9:
local found = string.match(content, v)
local found = string.match(content, v)
if found then return true end
if found then return true end
if found then
local v_cmt_before = '%<%!%-%-%s*'..v
local v_cmt_after = v..'[^{}]*}}%s*-->'
local found_cmt = mw.ustring.match(content, v_cmt_before) or mw.ustring.match(content, v_cmt_after)
if found_cmt then return 'commented'
else return true end
end
end
end
return false
return false

Revision as of 14:41, 17 April 2024

local p = {}

function p.check( frame )
	local pagename = mw.title.getCurrentTitle().text
	local content = mw.title.new(pagename):getContent() or ''
	local getRegex = require('Module:Template redirect regex').main
	local tregex = getRegex('Taxonbar')
	for _, v in pairs (tregex) do
		local found = string.match(content, v)
		if found then return true end
		if found then
			local v_cmt_before = '%<%!%-%-%s*'..v
			local v_cmt_after  = v..'[^{}]*}}%s*-->'
			local found_cmt = mw.ustring.match(content, v_cmt_before) or mw.ustring.match(content, v_cmt_after)
			if found_cmt then return 'commented'
			else return true end
		end
	end
	return false
end

return p