Module:Version
From Vintage Story Wiki
Documentation for this module may be created at Module:Version/doc
local p = {}
function p.categories(f)
local title = mw.title.getCurrentTitle().baseText
local ver = {}
for v in (title..'-'):gmatch('(.-)-') do
table.insert(ver, v)
end
local categories = ''
if ver[2] ~= nil then
if ver[2]:find('pre') then
categories = '[[Category:' .. ver[1] .. ' pre releases]]' .. '[[Category:' .. ver[1] .. ' development versions]]'
elseif ver[2]:find('rc') then
categories = '[[Category:' .. ver[1] .. ' release candidates]]' .. '[[Category:' .. ver[1] .. ' development versions]]'
end
end
categories = categories .. '[[Category:Versions]]'
return categories
end
function p.prevNextLinks(f)
local args = require( 'Module:ProcessArgs' ).merge( true )
local leftArrows = '<span style="margin-right:-0.35em">◄</span>◄ '
local rightArrows = ' <span style="margin-right:-0.35em">►</span>►'
local prev = ''
if args.prev then
prev = '[[' .. args.prev .. '|' .. leftArrows .. args.prev .. ']]'
end
local next = ''
if args.next then
next = '[[' .. args.next .. '|' .. args.next .. rightArrows .. ']]'
end
local prevDev = ''
if args.prevdev then
prevDev = args.prevdev:match('-(.*)')
prevDev = '[[' .. args.prevdev .. '|◄ ' .. prevDev .. ']]'
end
local nextDev = ''
if args.nextdev then
nextDev = args.nextdev:match('-(.*)')
nextDev = '[[' .. args.nextdev .. '|' .. nextDev .. ' ►]]'
end
if args.nextdev and args.next then
next = next .. '<br>'
end
if args.prevdev and args.prev then
prev = prev .. '<br>'
end
local width
if (args.next or args.nextdev) and (args.prev or args.prevdev) then
width = '50%'
else
width = '100%'
end
local body = '<table style="width: 100%; margin: auto;><tr><td style="width:' .. width .. '">' .. prev .. prevDev .. '</td><td>' .. next .. nextDev .. '</td></tr></table>'
return body
end
return p