删除的内容 添加的内容
创建 Navbox(融合 enwiki/zhwiki/mworg 版本)
 
Maintenance script留言 | 贡献
修复 Navbox subgroup 边框:用 title 缺失替代 frame:getTitle 来检测子导航框
 
(未显示2个用户的3个中间版本)
第37行:
end
 
local function getSubgroup(args, listnum, listText, prefix, evenodd_start)
local subArgs = {
[cfg.arg.border] = cfg.keyword.border_subgroup,
第56行:
end
end
return hasSubArgs and p._navbox(subArgs, evenodd_start) or listText
end
 
-- Main functions
function p._navbox(args, evenodd_start)
if args.type == cfg.keyword.with_collapsible_groups then
return p._withCollapsibleGroups(args)
第89行:
changer = first
else
local index = (type(evenodd_start) == 'number') and evenodd_start or 0
changer = function (code)
if code == '0' then
第300行:
 
local list_and_num = andnum('list', listnum)
local listText = inArray(cfg.keyword.subgroups, args[list_and_num])
local isSubgroup = inArray(cfg.keyword.subgroups, listText)
and getSubgroup(args, listnum, args[list_and_num]) or args[list_and_num]
if isSubgroup then
-- [EvenoddContext] 当前行 index(1-based)的 parity:
-- index=1→odd=0, index=2→even=1, index=3→odd=0 ...
-- 子级应从下一个 parity 开始,以实现跨层连续交替
local next_start = index % 2
listText = getSubgroup(args, listnum, listText, nil, next_start)
end
 
local oddEven = cfg.marker.oddeven
if listText:sub(1, 12) == '</div><table' then
oddEven = listText:find(cfg.pattern.navbox_title) and cfg.marker.restart or cfg.class.navbox_odd_part
end
 
local liststyle_and_num = andnum('liststyle', listnum)
第887行 ⟶ 第891行:
end
local args = getArgs(frame, {wrappers = wrappers})
-- 修复:{{Navbox subgroup}} 无 title 参数,以此区分主导航框与子导航框
if not boxtype and args.border == nil and args[1] == nil and args.title == nil then
args.border = cfg.keyword.border_subgroup
end
readArgs(args, "")
args.argHash = nil -- we shouldn't accept argHash passed from a template