Module:Section link: Difference between revisions
Jump to navigation
Jump to search
Content added Content deleted
(fix error placement and tweak default conjunction) |
(actually, just make the sections optional) |
||
Line 15: | Line 15: | ||
checkType('_main', 1, page, 'string', true) |
checkType('_main', 1, page, 'string', true) |
||
checkType('_main', 3, options, 'table', true) |
checkType('_main', 3, options, 'table', true) |
||
if |
if sections == nil then |
||
⚫ | |||
elseif type(sections) == 'string' then |
|||
sections = {sections} |
sections = {sections} |
||
elseif type(sections) ~= 'table' then |
elseif type(sections) ~= 'table' then |
||
error(string.format( |
error(string.format( |
||
"type error in argument #2 to '_main' |
"type error in argument #2 to '_main' " .. |
||
"(string, table or nil expected, got %s)", |
|||
type(sections) |
type(sections) |
||
), 2) |
), 2) |
||
Line 28: | Line 31: | ||
-- Make the link(s). |
-- Make the link(s). |
||
local isShowingPage = not options.nopage |
local isShowingPage = not options.nopage |
||
if #sections |
if #sections <= 1 then |
||
local linkPage = page or '' |
local linkPage = page or '' |
||
local section = sections[1] or 'Notes' |
local section = sections[1] or 'Notes' |
||
Line 38: | Line 41: | ||
return makeSectionLink(linkPage, section, display) |
return makeSectionLink(linkPage, section, display) |
||
else |
else |
||
-- Multiple sections. First, |
-- Multiple sections. First, make a list of the links to display. |
||
⚫ | |||
error('at least one section must be specified', 2) |
|||
end |
|||
-- Make the list of links. |
|||
local ret = {} |
local ret = {} |
||
for i, section in ipairs(sections) do |
for i, section in ipairs(sections) do |