Module:Pagetabs: Difference between revisions
From Kenshi Wiki
More actions
Created page with "local mArguments --initialize lazily local getArgNums = require('Module:Common').getArgNums local p = {} --Implements {{pagetabs}} from the frame function p.pagetabs(frame) mArguments = require('Module:Arguments') return p._pagetabs(mArguments.getArgs(frame), frame) end function p._pagetabs(args, frame) if not args then return 'Missing arguments' end local html = mw.html.create('div'):addClass('template-pagetabs') html:addClass('citizen-overflow') local tab..." |
(No difference)
|
Latest revision as of 03:19, 18 June 2025
Imported from https://tolkiengateway.net/wiki/Module:Pagetabs
local mArguments --initialize lazily
local getArgNums = require('Module:Common').getArgNums
local p = {}
--Implements {{pagetabs}} from the frame
function p.pagetabs(frame)
mArguments = require('Module:Arguments')
return p._pagetabs(mArguments.getArgs(frame), frame)
end
function p._pagetabs(args, frame)
if not args then
return 'Missing arguments'
end
local html = mw.html.create('div'):addClass('template-pagetabs')
html:addClass('citizen-overflow')
local tabs = {}
for i, _ in ipairs(getArgNums('page', args)) do
local num = tostring(i)
local page = args['page' .. num ]
if not page then return end
local text = args['text' .. num ] or page
local tab = string.format('[[%s|%s]]', page, text)
table.insert(tabs, tab)
end
html:wikitext(table.concat(tabs))
return frame:extensionTag {
name = 'templatestyles', args = { src = 'Module:Pagetabs/styles.css' }
} .. tostring(html)
end
return p