Module:Infobox television season disambiguation check

-- This module requires the use of the following modules. local getArgs = require('Module:Arguments').getArgs local validateDisambiguation = require('Module:Television infoboxes disambiguation check')

local p = {}

local validDisambiguationTypeList = { "TV series, season", "TV series, series", "season", "series" }

local validDisambiguationPatternList = { validateDisambiguation.DisambiguationPattern{pattern = "^(%d+) ([%D]+) TV series, season (%d+)$", type = 8},	-- "VALIDATION_TYPE_YEAR_COUNTRY_SEASON_NUMBER" validateDisambiguation.DisambiguationPattern{pattern = "^(%d+) ([%D]+) TV series, series (%d+)$", type = 8},	-- "VALIDATION_TYPE_YEAR_COUNTRY_SEASON_NUMBER" validateDisambiguation.DisambiguationPattern{pattern = "^(%d+) TV series, season (%d+)$", type = 4},			-- "VALIDATION_TYPE_YEAR_SEASON_NUMBER" validateDisambiguation.DisambiguationPattern{pattern = "^(%d+) TV series, series (%d+)$", type = 4}, validateDisambiguation.DisambiguationPattern{pattern = "^([%D]+) TV series, season (%d+)$", type = 5},			-- "VALIDATION_TYPE_COUNTRY_SEASON_NUMBER" validateDisambiguation.DisambiguationPattern{pattern = "^([%D]+) TV series, series (%d+)$", type = 5}, validateDisambiguation.DisambiguationPattern{pattern = "^([%D]+) season (%d+)$", type = 5},						-- "VALIDATION_TYPE_COUNTRY_SEASON_NUMBER" validateDisambiguation.DisambiguationPattern{pattern = "^([%D]+) series (%d+)$", type = 5}, validateDisambiguation.DisambiguationPattern{pattern = "^([%D]+) season$", type = 7},							-- "VALIDATION_TYPE_COUNTRY_SEASON" validateDisambiguation.DisambiguationPattern{pattern = "^season (%d+)$", type = 6},								-- "VALIDATION_TYPE_SEASON_NUMBER" validateDisambiguation.DisambiguationPattern{pattern = "^series (%d+)$", type = 6} }

local exceptionList = { "^Bigg Boss %(Bangla season %d+%)$", "^Bigg Boss %(Hindi season %d+%)$", "^Bigg Boss %(Malayalam season %d+%)$", "^Bigg Boss %(Tamil season %d+%)$", "^Bigg Boss %(Telugu season %d+%)$" }

local otherInfoboxList = { ["^[^,]*TV series$"] = "" }

local invalidTitleStyleList = { "List of" }

local function getOtherInfoboxListMerged local infoboxTelevisionDisambiguation = require('Module:Infobox television disambiguation check') local list = infoboxTelevisionDisambiguation.getDisambiguationTypeList

for i = 1, #list do		otherInfoboxList[list[i]] = "" end return otherInfoboxList end

local function _main(args) local title = args[1] local otherInfoboxListMerged = getOtherInfoboxListMerged return validateDisambiguation.main(title, "infobox television season", validDisambiguationTypeList, validDisambiguationPatternList, exceptionList, otherInfoboxListMerged, invalidTitleStyleList) end

function p.main(frame) local args = getArgs(frame) local category, debugString = _main(args) return category end

function p.test(frame) local args = getArgs(frame) local category, debugString = _main(args) return debugString end

return p