Module:SubpageAfter

From SMITE Esports Wiki
Jump to: navigation, search

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

local util_form = require('Module:FormUtil')
local util_cargo = require('Module:CargoUtil')

-- this module is to be wiki-specific

local p = {}
function p.after(frame, fulltitle, tabstype)
	local titletbl = mw.text.split(fulltitle, '/')
	local text = {}
	if tabstype == 'Player' then
		p.after_player(text, frame, titletbl)
	elseif tabstype == 'Team' then
		p.after_team(text, frame, titletbl)
	end
	if not mw.title.makeTitle('',titletbl[1]).exists then
		text[#text+1] = '[[Category:Player Secondary Pages Without Primary Pages]]'
	end
	local output = table.concat(text)
	return output
end

function p.after_player(text, frame, titletbl)
	if titletbl[2] == 'Statistics' and titletbl[3] then
		text[#text+1] = ''
	end
	if titletbl[2] then
		if p.doWeLowercase('Players', titletbl[1]) then
			text[#text+1] = frame:expandTemplate({ title = 'lowercase' })
		end
	end
	return
end

function p.after_team(text, frame, titletbl)
	if titletbl[2] then
		if p.doWeLowercase('Teams', titletbl[1]) then
			text[#text+1] = frame:expandTemplate({ title = 'lowercase' })
		end
	end
	return
end

function p.doWeLowercase(tbl, title)
	local query = {
		tables = tbl,
		fields = 'IsLowercase',
		where = string.format('_pageName="%s"',title),
		types = { IsLowercase = 'boolean' }
	}
	return util_cargo.getOneResult(query)
end
return p