Difference between revisions of "Module:Military navigation"
Jump to navigation
Jump to search
blackwiki>Frietjes (don't auto wrap lines with br tags) |
blackwiki>Frietjes |
||
| Line 32: | Line 32: | ||
-- process groupstyle, abovestyle, belowstyle | -- process groupstyle, abovestyle, belowstyle | ||
args['groupstyle'] = Styles['nav_box_label'] .. (pargs['groupstyle'] or '') | args['groupstyle'] = Styles['nav_box_label'] .. (pargs['groupstyle'] or '') | ||
| + | pargs['groupstyle'] = '' | ||
args['abovestyle'] = Styles['nav_box_label'] .. (pargs['abovestyle'] or '') | args['abovestyle'] = Styles['nav_box_label'] .. (pargs['abovestyle'] or '') | ||
| + | pargs['abovestyle'] = '' | ||
args['belowstyle'] = Styles['nav_box_label'] .. (pargs['belowstyle'] or '') | args['belowstyle'] = Styles['nav_box_label'] .. (pargs['belowstyle'] or '') | ||
| + | pargs['belowstyle'] = '' | ||
-- process oddstyle, evenstyle | -- process oddstyle, evenstyle | ||
args['oddstyle'] = isnotblank(pargs['odd_color']) | args['oddstyle'] = isnotblank(pargs['odd_color']) | ||
Revision as of 22:21, 5 May 2017
| 40x40px | This module is subject to page protection. It is a highly visible module in use by a very large number of pages, or is substituted very frequently. Because vandalism or mistakes would affect many pages, and even trivial editing might cause substantial load on the servers, it is protected from editing. |
{{Wikipedia:WikiProject Military history/Military navigation}}
local p = { }
local Navbox = require('Module:Navbox')
local Styles = require('Module:WPMILHIST Infobox style')
local function isblank(s)
return (not s) or s == ''
end
local function isnotblank(s)
return s and s ~= ''
end
function p.main(frame)
local args = { }
local pargs = frame:getParent().args
-- process bodystyle and titlestyle
if (pargs['style'] or '') == 'wide' then
args['titlestyle'] = Styles['nav_box_wide_header']
args['bodystyle'] = Styles['nav_box_wide']
else
args['titlestyle'] = Styles['nav_box_header']
if (pargs['border'] or '') == 'child' then
args['bodystyle'] = Styles['nav_box_child']
else
args['bodystyle'] = Styles['nav_box']
end
end
pargs['titlestyle'] = ''
pargs['bodystyle'] = ''
-- process groupstyle, abovestyle, belowstyle
args['groupstyle'] = Styles['nav_box_label'] .. (pargs['groupstyle'] or '')
pargs['groupstyle'] = ''
args['abovestyle'] = Styles['nav_box_label'] .. (pargs['abovestyle'] or '')
pargs['abovestyle'] = ''
args['belowstyle'] = Styles['nav_box_label'] .. (pargs['belowstyle'] or '')
pargs['belowstyle'] = ''
-- process oddstyle, evenstyle
args['oddstyle'] = isnotblank(pargs['odd_color'])
and ('background:' .. pargs['odd_color']) or nil
args['evenstyle'] = isnotblank(pargs['even_color'])
and ('background:' .. pargs['even_color']) or nil
pargs['oddstyle'] = ''
pargs['evenstyle'] = ''
-- process name and rawname
args['name'] = (isnotblank(pargs['name']) and pargs['name']) or pargs['rawname']
if isblank(args['name']) then args['navbar'] = 'plain' end
pargs['name'] = ''
pargs['rawname'] = ''
-- copy the remaining args
for k, v in pairs(pargs) do
if v and v ~= '' then
args[k] = v
end
end
-- add allow wrap
if args['title'] and (pargs['style'] or '') ~= 'wide' then
if not mw.ustring.match(args['title'], '<span class="wrap">') then
local p = '[^%[%]<>|][^%[%]<>|][^%[%]<>|][^%[%]<>|][^%[%]<>|]'
local p = p .. p .. p
args['title'] = mw.ustring.gsub(args['title'],
'%[%[(' .. p .. '[^%[%]<>|]*)%]%]',
'[[%1|<span class="wrap">%1</span>]]')
args['title'] = mw.ustring.gsub(args['title'],
'%[%[([^%[%]<>|]*)|(' .. p .. '[^%[%]<>|]*)%]%]',
'[[%1|<span class="wrap">%2</span>]]')
end
end
return Navbox._navbox(args)
end
return p