Module

Difference between revisions of "Caller title"

m (Protected "Module:Caller title": High-risk template or module (more info) ([Edit=Allow only administrators] (indefinite) [Move=Allow only administrators] (indefinite)))
 
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)))

Revision as of 06:31, 15 December 2020

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