Module:Navboxes: Difference between revisions
Jump to navigation
Jump to search
m Protected "Module:Navboxes": High-risk module ([Edit=Require template editor access] (indefinite)) |
imported>Ahecht support direct invocation |
||
(One intermediate revision by one other user not shown) | |||
Line 2: | Line 2: | ||
local p = {} | local p = {} | ||
local getArgs = require('Module:Arguments').getArgs | |||
local Navbox = require('Module:Navbox') | local Navbox = require('Module:Navbox') | ||
Line 27: | Line 28: | ||
function p.top(frame) | function p.top(frame) | ||
local args = frame | local args = getArgs(frame) | ||
local parts = mw.text.split(navboxes(args, '<ADD LIST HERE>'), '<ADD LIST HERE>') | local parts = mw.text.split(navboxes(args, '<ADD LIST HERE>'), '<ADD LIST HERE>') | ||
return parts[1] | return parts[1] | ||
Line 39: | Line 40: | ||
function p.navbox(frame) | function p.navbox(frame) | ||
local args = frame | local args = getArgs(frame) | ||
local list = args['list1'] or args['list'] or '' | local list = args['list1'] or args['list'] or '' | ||
local track_cats = '' | local track_cats = '' |
Latest revision as of 16:43, 30 March 2022
Implements most of {{Navboxes}}
-- This implements Template:navboxes
local p = {}
local getArgs = require('Module:Arguments').getArgs
local Navbox = require('Module:Navbox')
local function isnotempty(s)
return s and s:match( '^%s*(.-)%s*$' ) ~= ''
end
local function navboxes(args, list)
local navbar = (args['state'] and args['state'] == 'off') and 'off' or 'plain'
local title = args['title'] or 'Links to related articles'
local titlestyle = 'background:' .. (args['bg'] or '#e8e8ff') .. ';'
.. (isnotempty(args['fg']) and ('color:' .. args['fg'] .. ';') or '')
.. (isnotempty(args['bordercolor']) and ('border: 1px solid ' .. args['bordercolor'] .. ';') or '')
.. (args['titlestyle'] or '')
return Navbox._navbox({
navbar = navbar, title = title,
list1 = list,
state = args['state'] or 'collapsed',
titlestyle = titlestyle,
liststyle = 'font-size:114%',
listpadding = '0px',
tracking = 'no'
})
end
function p.top(frame)
local args = getArgs(frame)
local parts = mw.text.split(navboxes(args, '<ADD LIST HERE>'), '<ADD LIST HERE>')
return parts[1]
end
function p.bottom(frame)
local args = {}
local parts = mw.text.split(navboxes(args, '<ADD LIST HERE>'), '<ADD LIST HERE>')
return parts[2]
end
function p.navbox(frame)
local args = getArgs(frame)
local list = args['list1'] or args['list'] or ''
local track_cats = ''
if list == '' then
if mw.title.getCurrentTitle().namespace == 0 then
track_cats = '[[Category:Navboxes template with no content]]'
end
end
return navboxes(args, list) .. track_cats
end
return p