Jump to content

Module:Television episode disambiguation description

From Wikipedia, the free encyclopedia
This is an old revision of this page, as edited by Gonnym (talk | contribs) at 14:48, 20 September 2018. The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.

local p = {}

function p.getFormmatedArticleLink(frame)
	local articleName = frame.args[1]															-- Get the article name.

	local disambiguation = string.match(articleName, "%s%((.-)%)")								-- Get the text inside the disambiguation parentheses.
	local stylizedArticleTitle

	if not disambiguation then																	-- Check if the article name does not have disambiguation parentheses.
		stylizedArticleTitle = "[[\"" .. articleName .. "\"]]"									-- Add qutoation marks for the title per [[MOS:QUOTETITLE]] and add link brackets.
		return stylizedArticleTitle																-- Return title 
	else																						-- Article has disambiguation.
		local articleTitle = string.gsub(articleName, "%s+%b()$", "", 1, false)					-- Get the article title without the disambiguation.
		stylizedArticleTitle = "\"" .. articleTitle .. "\""										-- Add qutoation marks to the title per [[MOS:QUOTETITLE]].
		
		local isDisambiguationExtended = string.find(disambiguation, "episode")					-- Check if the article name has extended disambiguation with the word "episode".
		local stylizedDisambiguation
		
		if not isDisambiguationExtended then													-- Article does not have extended disambiguation.
			stylizedDisambiguation = "(''" .. disambiguation .. "'')"							-- Add italics to the disambiguation which should only be the TV series name per [[MOS:ITALICTITLE]] and [[WP:NCTV]].
		else																					-- Articles has extended disambiguation.
			local tvSeries = string.gsub(disambiguation, "episode", "", 1, true)				-- Get the TV series name without the extended disambiguation.
			stylizedDisambiguation = "(''" .. tvSeries .. "'' episode)"							-- Add italics to the disambiguation which should only be the TV series name per [[MOS:ITALICTITLE]] and [[WP:NCTV]]; 
		end																						-- and add back the extended disambiguation.
		
		local newTitle = "[[" .. stylizedArticleTitle .. " " .. stylizedDisambiguation .. "]]"	-- Recreate the article name from the title and disambiguation and add link brackets.
    return newTitle																				-- Return title.
    end
end

return p