Module:Table empty cell: Difference between revisions

From Seeds of the Word, the encyclopedia of the influence of the Gospel on culture
(remove inner span to reduce PEIS of dependant templates.)
(No difference)

Revision as of 21:27, January 16, 2022

Documentation for this module may be created at Module:Table empty cell/doc

local p = {}

-- List of default title texts.
local defaultTitleTextlist = {
	["TBA"] = "To be announced",
	["TBD"] = "To be determined",
	["N/A"] = "Not available"	
}

-- Local function which is used to retrieve the title text.
local function getTitleText(args, altText)
	local titleText = args[2] or args["title_text"]

	-- If the title text was manually added, return it.
	if (titleText) then
		return titleText
	end
	
	-- The title text was not set, get the correct default text which corresponds to the alt text.
	for k, v in pairs(defaultTitleTextlist) do
		if (altText == k) then
			return v
		end
	end
end

-- Local function which is used to retrieve the alt text.
local function getAltText(args)
	local altText = args[1] or args["alt_text"]
	
	if (altText == nil) then
		altText = "TBA"
	end
	
	return altText
end

-- Local function which does the actual main process.
function p._main(args)
	local altText = getAltText(args)
	local titleText = getTitleText(args, altText)

	return "<small style=\"color: #2C2C2C\" title=\"" .. titleText .. "\">" .. altText .. "</small>"
end

--[[
Public function which is used to create information for an empty text cell.

Parameters:
	-- |1= or |alt_text=		— optional; The text which will be written in the cell.
	-- |2= or |title_text=		— optional; The text which will be shown when hovering over the cell.
--]]
function p.main(frame)
	local getArgs = require('Module:Arguments').getArgs;
	local args = getArgs(frame);
	return p._main(args)
end

return p