For Previous Chapter:
num must be the current chapter number, this removes the need for all the #expr
calls
{{#invoke:Chapter Infobox|prev_chapter|num}}
For Next Chapter:
num must be the current chapter number, this removes the need for all the #expr
calls
{{#invoke:Chapter Infobox|next_chapter|num}}
Code uses/calls Module:Which_Chapter
local wc = require("Module:Which_Chapter")
local mod = {}
---@return string
function mod.prev_chapter(frame)
local args = frame.args
local parent = frame:getParent()
local pargs={}
if parent then pargs=parent.args end
local num = args[1] or pargs[1] or 0
if num - 1 <= 0 then
return "N/A"
else
frame.args[1] = num - 1
return "[[" .. wc.where_chapter(frame) .. "]]"
end
end
---@return string
function mod.next_chapter(frame)
local args = frame.args
local parent = frame:getParent()
local pargs={}
if parent then pargs=parent.args end
local num = args[1] or pargs[1] or 0
frame.args[1] = num + 1
local ret = wc.where_chapter(frame)
if ret ~= "TBA" then return "[[" .. ret .. "]]" else return ret end
end
return mod