Module

Difference between revisions of "Caller title"

m (Protected "Module:Caller title": High-risk Lua module ([Edit=Allow only template editors and administrators] (indefinite) [Move=Allow only template editors and administrators] (indefinite)))
m (1 revision imported)
 
(One intermediate revision by the same user not shown)

Latest revision as of 15:35, 13 May 2023

Documentation for this module may be created at Module:Caller title/doc

local p = {}

function p.title(frame)
	return frame:getParent():getTitle()
end

function p.lang(frame)
	local base = frame.args.base
	local title = p.title(frame)
	if base ~= title then
		local parts = mw.text.split(p.title(frame), '/', true)
		return parts[#parts]
	else
		-- we’re on the base page of the translation (directly, it’s not translated from somewhere),
		-- so we have no subpage language code, but we use PAGELANGUAGE
		return frame:preprocess('{{PAGELANGUAGE}}')
	end
end

return p