(Created page with "local cargo = mw.ext.cargo local PageTabs = {} function PageTabs.main(frame) local currentTitle = mw.title.getCurrentTitle().text local empty = true local titleSplit = mw.text.split(currentTitle, '/') local org = #titleSplit > 1 and titleSplit[2] or currentTitle -- Check if there are any interviews for this page local tables = 'Teams' local fields = '_pageName, org' local cargoArgs = { where = 'org="' .. org .. '"' } local results = cargo.query(tables, f...") |
No edit summary |
||
Line 20: | Line 20: | ||
tabArgs.name1='Organization' | tabArgs.name1='Organization' | ||
tabArgs.link1 = org | tabArgs.link1 = org | ||
if #results > 0 then | if #results > 0 then | ||
empty = false | empty = false | ||
for r = | local game = '' | ||
local gameIndex = 2 | |||
for r = 1, #results do | |||
local result = results[r] | local result = results[r] | ||
local resultSplit = mw.text.split(result._pageName, '/') | local resultSplit = mw.text.split(result._pageName, '/') | ||
tabArgs['name' .. tostring(r)] = resultSplit[1] | if game ~= resultSplit[1] then | ||
tabArgs[' | tabArgs['name' .. tostring(r + 1)] = resultSplit[1] | ||
else | |||
tabArgs['name' .. tostring(r + 1)] = resultSplit[1] .. ' ' .. tostring(gameIndex) | |||
gameIndex = gameIndex + 1 | |||
end | |||
game = resultSplit[1] | |||
tabArgs['link' .. tostring(r + 1)] = result._pageName | |||
end | end | ||
end | end |
Revision as of 12:38, 19 October 2022
Documentation for this module may be created at Module:PageTabs org/doc
local cargo = mw.ext.cargo
local PageTabs = {}
function PageTabs.main(frame)
local currentTitle = mw.title.getCurrentTitle().text
local empty = true
local titleSplit = mw.text.split(currentTitle, '/')
local org = #titleSplit > 1 and titleSplit[2] or currentTitle
-- Check if there are any interviews for this page
local tables = 'Teams'
local fields = '_pageName, org'
local cargoArgs = {
where = 'org="' .. org .. '"'
}
local results = cargo.query(tables, fields, cargoArgs)
local tabArgs = {}
tabArgs.name1='Organization'
tabArgs.link1 = org
if #results > 0 then
empty = false
local game = ''
local gameIndex = 2
for r = 1, #results do
local result = results[r]
local resultSplit = mw.text.split(result._pageName, '/')
if game ~= resultSplit[1] then
tabArgs['name' .. tostring(r + 1)] = resultSplit[1]
else
tabArgs['name' .. tostring(r + 1)] = resultSplit[1] .. ' ' .. tostring(gameIndex)
gameIndex = gameIndex + 1
end
game = resultSplit[1]
tabArgs['link' .. tostring(r + 1)] = result._pageName
end
end
if empty then
return '<span class="d-none"></span>'
else
return frame:expandTemplate{ title = 'Tabs', args = tabArgs }
end
end
return PageTabs