Module:Version: Difference between revisions

From Vintage Story Wiki
m
Undo revision 55858 by Sana (talk)
mNo edit summary
m (Undo revision 55858 by Sana (talk))
Tag: Undo
 
(20 intermediate revisions by the same user not shown)
Line 2: Line 2:


function p.categories(f)
function p.categories(f)
local title = mw.title.getCurrentTitle().baseText
local ver = {}
local ver = {}
     for v in (str..'-'):gmatch('(.-)-') do
     for v in (title..'-'):gmatch('(.-)-') do
table.insert(ver, v)
table.insert(ver, v)
end
end
local categories
local categories = ''
if ver[2]:find('pre') then
if ver[2] ~= nil then
  categories = '[[Category:' .. ver[1] .. ' pre releases]]' .. '[[Category:' .. ver[1] .. ' development versions]]'
if ver[2]:find('pre') then
elseif ver[2]:find('rc') then
  categories = '[[Category:' .. ver[1] .. ' pre-releases]]' .. '[[Category:' .. ver[1] .. ' development versions]]'
    categories = '[[Category:' .. ver[1] .. ' release candidates]]' .. '[[Category:' .. ver[1] .. ' development versions]]'
elseif ver[2]:find('rc') then
    categories = '[[Category:' .. ver[1] .. ' release candidates]]' .. '[[Category:' .. ver[1] .. ' development versions]]'
end
end
end
categories = categories .. '[[Category:Versions]]'
categories = categories .. '[[Category:Versions]]'
Line 25: Line 28:
local prev = ''
local prev = ''
if args.prev then  
if args.prev then  
if string.match(string.lower(args.prev), 'tbd') then
if args.prev:match('-(.*)') then
prev = 'TBD'
prev = args.prev:match('-(.*)')
else  
prev = '[[' .. args.prev .. '|◄ ' .. prev .. ']]'
    prev = '[[' .. args.prev .. '|' .. leftArrows .. args.prev .. ']]'
else
prev = '[[' .. args.prev .. '|' .. args.prev .. ']]'
end
end
end
end
local next = ''
local next = ''
if args.next then  
if args.next then  
if string.match(string.lower(args.next), 'tbd') then
if args.next:match('-(.*)') then
next = 'TBD' .. rightArrows
next = args.next:match('-(.*)')
else  
next = '[[' .. args.next .. '|' .. next .. ' ►]]'
    next = '[[' .. args.next .. '|' .. args.next .. rightArrows .. ']]'
else
next = '[[' .. args.next .. '|' .. args.next .. ' ]]'
end
end
end
end
local prevDev = ''
local prevParent = ''
if args.prevdev then  
if args.prevparent then  
if string.match(string.lower(args.prevdev), 'tbd') then
prevParent = '[[' .. args.prevparent .. '|' .. leftArrows .. args.prevparent .. ']]'
prevDev = '◄ TBD'
end
else
local nextParent = ''
prevDev = args.prevdev:match('-(.*)')
if args.nextparent then
    prevDev = '[[' .. args.prevdev .. '|◄ ' .. prevDev .. ']]'
nextParent = args.nextparent:match('-(.*)')
nextParent = '[[' .. args.nextparent .. '|' .. args.nextparent .. rightArrows .. ']]'
end
if args.nextparent and args.next then
nextParent = nextParent .. '<br>'
end
if args.prevparent and args.prev then
prevParent = prevParent .. '<br>'
end
if args.ver then
if args.prev then
if args.prev:find(args.ver) == nil then
prev = '[[' .. args.prev .. '|◄ ' .. args.prev .. ']]'
end
end
if args.next then
if args.next:find(args.ver) == nil then
next = '[[' .. args.next .. '|' .. args.next .. ' ►]]'
end
end
end
end
end
local nextDev = ''
if args.nextdev then
local width
if string.match(string.lower(args.nextdev), 'tbd') then
if (args.next or args.nextparent) and (args.prev or args.prevparent) then
nextDev = 'TBD ►'
width = '50%'
else  
else
nextDev = args.prevdev:match('-(.*)')
width = '100%'
    nextDev = '[[' .. args.nextdev .. '|' .. nextDev .. ' ►]]'
end
end
end
local body = '<table style="width: 100%; margin: auto;><tr><td>' .. prev .. '<br>' .. prevDev .. '</td><td>' .. next .. '<br>' .. nextDev .. '</td></tr></table>'
local body = '<table style="width: 100%; margin: auto;><tr><td style="width:' .. width .. '">' .. prevParent .. prev .. '</td><td>' .. nextParent .. next .. '</td></tr></table>'
return body
return body
end
end
return p
return p
Confirmedusers, Interface administrators
1,131

edits