<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="uk">
	<id>https://wiki.court.gov.ua/index.php?action=history&amp;feed=atom&amp;title=%D0%9C%D0%BE%D0%B4%D1%83%D0%BB%D1%8C%3ANavbox</id>
	<title>Модуль:Navbox - Історія редагувань</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.court.gov.ua/index.php?action=history&amp;feed=atom&amp;title=%D0%9C%D0%BE%D0%B4%D1%83%D0%BB%D1%8C%3ANavbox"/>
	<link rel="alternate" type="text/html" href="https://wiki.court.gov.ua/index.php?title=%D0%9C%D0%BE%D0%B4%D1%83%D0%BB%D1%8C:Navbox&amp;action=history"/>
	<updated>2026-04-28T19:25:02Z</updated>
	<subtitle>Історія редагувань цієї сторінки в вікі</subtitle>
	<generator>MediaWiki 1.37.1</generator>
	<entry>
		<id>https://wiki.court.gov.ua/index.php?title=%D0%9C%D0%BE%D0%B4%D1%83%D0%BB%D1%8C:Navbox&amp;diff=1663&amp;oldid=prev</id>
		<title>YakovBerringer: Захистив «Модуль:Navbox» ([Редагування=Дозволено тільки адміністраторам] (безстроково) [Перейменування=Дозволено тільки адміністраторам] (безстроково))</title>
		<link rel="alternate" type="text/html" href="https://wiki.court.gov.ua/index.php?title=%D0%9C%D0%BE%D0%B4%D1%83%D0%BB%D1%8C:Navbox&amp;diff=1663&amp;oldid=prev"/>
		<updated>2021-02-03T22:15:22Z</updated>

		<summary type="html">&lt;p&gt;Захистив «&lt;a href=&quot;/w/%D0%9C%D0%BE%D0%B4%D1%83%D0%BB%D1%8C:Navbox&quot; title=&quot;Модуль:Navbox&quot;&gt;Модуль:Navbox»&lt;/a&gt; ([Редагування=Дозволено тільки адміністраторам] (безстроково) [Перейменування=Дозволено тільки адміністраторам] (безстроково))&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;uk&quot;&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Попередня версія&lt;/td&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Версія за 01:15, 4 лютого 2021&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-notice&quot; lang=&quot;uk&quot;&gt;&lt;div class=&quot;mw-diff-empty&quot;&gt;(Немає відмінностей)&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</summary>
		<author><name>YakovBerringer</name></author>
	</entry>
	<entry>
		<id>https://wiki.court.gov.ua/index.php?title=%D0%9C%D0%BE%D0%B4%D1%83%D0%BB%D1%8C:Navbox&amp;diff=1390&amp;oldid=prev</id>
		<title>Tviggy в 18:00, 14 жовтня 2020</title>
		<link rel="alternate" type="text/html" href="https://wiki.court.gov.ua/index.php?title=%D0%9C%D0%BE%D0%B4%D1%83%D0%BB%D1%8C:Navbox&amp;diff=1390&amp;oldid=prev"/>
		<updated>2020-10-14T18:00:04Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;a href=&quot;//wiki.court.gov.ua/index.php?title=%D0%9C%D0%BE%D0%B4%D1%83%D0%BB%D1%8C:Navbox&amp;amp;diff=1390&amp;amp;oldid=1374&quot;&gt;Показати зміни&lt;/a&gt;</summary>
		<author><name>Tviggy</name></author>
	</entry>
	<entry>
		<id>https://wiki.court.gov.ua/index.php?title=%D0%9C%D0%BE%D0%B4%D1%83%D0%BB%D1%8C:Navbox&amp;diff=1374&amp;oldid=prev</id>
		<title>Tviggy в 17:36, 14 жовтня 2020</title>
		<link rel="alternate" type="text/html" href="https://wiki.court.gov.ua/index.php?title=%D0%9C%D0%BE%D0%B4%D1%83%D0%BB%D1%8C:Navbox&amp;diff=1374&amp;oldid=prev"/>
		<updated>2020-10-14T17:36:56Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;a href=&quot;//wiki.court.gov.ua/index.php?title=%D0%9C%D0%BE%D0%B4%D1%83%D0%BB%D1%8C:Navbox&amp;amp;diff=1374&amp;amp;oldid=1372&quot;&gt;Показати зміни&lt;/a&gt;</summary>
		<author><name>Tviggy</name></author>
	</entry>
	<entry>
		<id>https://wiki.court.gov.ua/index.php?title=%D0%9C%D0%BE%D0%B4%D1%83%D0%BB%D1%8C:Navbox&amp;diff=1372&amp;oldid=prev</id>
		<title>Tviggy в 17:29, 14 жовтня 2020</title>
		<link rel="alternate" type="text/html" href="https://wiki.court.gov.ua/index.php?title=%D0%9C%D0%BE%D0%B4%D1%83%D0%BB%D1%8C:Navbox&amp;diff=1372&amp;oldid=prev"/>
		<updated>2020-10-14T17:29:58Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;a href=&quot;//wiki.court.gov.ua/index.php?title=%D0%9C%D0%BE%D0%B4%D1%83%D0%BB%D1%8C:Navbox&amp;amp;diff=1372&amp;amp;oldid=1371&quot;&gt;Показати зміни&lt;/a&gt;</summary>
		<author><name>Tviggy</name></author>
	</entry>
	<entry>
		<id>https://wiki.court.gov.ua/index.php?title=%D0%9C%D0%BE%D0%B4%D1%83%D0%BB%D1%8C:Navbox&amp;diff=1371&amp;oldid=prev</id>
		<title>Tviggy в 17:23, 14 жовтня 2020</title>
		<link rel="alternate" type="text/html" href="https://wiki.court.gov.ua/index.php?title=%D0%9C%D0%BE%D0%B4%D1%83%D0%BB%D1%8C:Navbox&amp;diff=1371&amp;oldid=prev"/>
		<updated>2020-10-14T17:23:41Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;a href=&quot;//wiki.court.gov.ua/index.php?title=%D0%9C%D0%BE%D0%B4%D1%83%D0%BB%D1%8C:Navbox&amp;amp;diff=1371&amp;amp;oldid=158&quot;&gt;Показати зміни&lt;/a&gt;</summary>
		<author><name>Tviggy</name></author>
	</entry>
	<entry>
		<id>https://wiki.court.gov.ua/index.php?title=%D0%9C%D0%BE%D0%B4%D1%83%D0%BB%D1%8C:Navbox&amp;diff=158&amp;oldid=prev</id>
		<title>Tviggy: Створена сторінка: -------------------------------------------------------------------- --&lt;pre&gt; Navbox Module -- -- * Fully CSS styled (inline styles possible but not default) --...</title>
		<link rel="alternate" type="text/html" href="https://wiki.court.gov.ua/index.php?title=%D0%9C%D0%BE%D0%B4%D1%83%D0%BB%D1%8C:Navbox&amp;diff=158&amp;oldid=prev"/>
		<updated>2020-05-19T23:10:01Z</updated>

		<summary type="html">&lt;p&gt;Створена сторінка: -------------------------------------------------------------------- --&amp;lt;pre&amp;gt; Navbox Module -- -- * Fully CSS styled (inline styles possible but not default) --...&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Нова сторінка&lt;/b&gt;&lt;/p&gt;&lt;div&gt;--------------------------------------------------------------------&lt;br /&gt;
--&amp;lt;pre&amp;gt; Navbox Module&lt;br /&gt;
--&lt;br /&gt;
-- * Fully CSS styled (inline styles possible but not default)&lt;br /&gt;
-- * Supports unlimited rows&lt;br /&gt;
--&lt;br /&gt;
-- By User:Tjcool007 from layton.fandom.com&lt;br /&gt;
--------------------------------------------------------------------&lt;br /&gt;
 &lt;br /&gt;
local p = {}&lt;br /&gt;
 &lt;br /&gt;
local args = {} -- Arguments passed to template&lt;br /&gt;
local navbox -- Actual navbox&lt;br /&gt;
 &lt;br /&gt;
--local working = {}&lt;br /&gt;
local rownums, skiprows = {}, {}&lt;br /&gt;
local hasrows, alt, hasData, isChild = false, false, false, false&lt;br /&gt;
local activeSection, sections, cimage, cimageleft&lt;br /&gt;
local colspan, rowspan&lt;br /&gt;
 &lt;br /&gt;
local showText, hideText = 'Show', 'Hide'&lt;br /&gt;
 &lt;br /&gt;
local langCode = mw.getContentLanguage():getCode()&lt;br /&gt;
local localization = {} --localized strings table&lt;br /&gt;
localization['en'] = {show = 'Show', hide = 'Hide'}&lt;br /&gt;
localization['ru'] = {show = 'показать', hide = 'скрыть'}&lt;br /&gt;
localization['zh'] = {show = '显示', hide = '隐藏'}&lt;br /&gt;
if localization[langCode] then&lt;br /&gt;
    showText = localization[langCode]['show']&lt;br /&gt;
    hideText = localization[langCode]['hide']&lt;br /&gt;
end&lt;br /&gt;
 &lt;br /&gt;
------------------------------------------------&lt;br /&gt;
-- Title&lt;br /&gt;
------------------------------------------------&lt;br /&gt;
 &lt;br /&gt;
--- Processes the VDE links in the title&lt;br /&gt;
--&lt;br /&gt;
-- @param titlecell The table cell of the title&lt;br /&gt;
local function processVde( titlecell )&lt;br /&gt;
	if not args.template then return end&lt;br /&gt;
 &lt;br /&gt;
	titlecell:wikitext('&amp;lt;span class=&amp;quot;navbox-vde&amp;quot;&amp;gt;'&lt;br /&gt;
		.. mw.getCurrentFrame():expandTemplate({&lt;br /&gt;
			title = 'vdelinks',&lt;br /&gt;
			args = { args.template, ['type'] = 'navbox' }&lt;br /&gt;
		}) .. '&amp;lt;/span&amp;gt;')&lt;br /&gt;
end&lt;br /&gt;
 &lt;br /&gt;
--- Processes the main title row&lt;br /&gt;
local function processTitle()&lt;br /&gt;
	local titlerow = mw.html.create('tr'):addClass('navbox-title')&lt;br /&gt;
	local titlecell = mw.html.create('th'):attr('colspan',colspan):attr('scope','col')&lt;br /&gt;
 &lt;br /&gt;
	if not pcall( processVde, titlecell ) then&lt;br /&gt;
		titlecell:wikitext( '&amp;lt;b class=&amp;quot;navbox-vde error&amp;quot; title=&amp;quot;Missing Template:Vdelinks&amp;quot;&amp;gt;!!!&amp;lt;/b&amp;gt;' )&lt;br /&gt;
	end&lt;br /&gt;
 &lt;br /&gt;
	titlecell:wikitext( args.title or '{{{title}}}' )&lt;br /&gt;
 &lt;br /&gt;
	-- Padding&lt;br /&gt;
	local hasTemplate = args.template ~= nil&lt;br /&gt;
	local hasState = not args.state or args.state ~= 'plain'&lt;br /&gt;
 &lt;br /&gt;
	if hasTemplate ~= hasState then&lt;br /&gt;
		if hasTemplate then&lt;br /&gt;
			titlecell:addClass('navbox-title-padright')&lt;br /&gt;
		else&lt;br /&gt;
			titlecell:addClass('navbox-title-padleft')&lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
 &lt;br /&gt;
	if args.titleclass then titlerow:addClass( args.titleclass ) end&lt;br /&gt;
	if args.titlestyle then titlecell:cssText( args.titlestyle ) end&lt;br /&gt;
 &lt;br /&gt;
	titlerow:node(titlecell)&lt;br /&gt;
	navbox:node(titlerow)&lt;br /&gt;
end&lt;br /&gt;
 &lt;br /&gt;
local function _addGutter( parent, incRowspan )&lt;br /&gt;
	parent:tag('tr'):addClass('navbox-gutter'):tag('td'):attr('colspan',2)&lt;br /&gt;
 &lt;br /&gt;
	if incRowspan then&lt;br /&gt;
		rowspan = rowspan + 1&lt;br /&gt;
	end&lt;br /&gt;
end&lt;br /&gt;
 &lt;br /&gt;
------------------------------------------------&lt;br /&gt;
-- Above/Below&lt;br /&gt;
------------------------------------------------&lt;br /&gt;
 &lt;br /&gt;
--- Processes the above and below rows&lt;br /&gt;
--&lt;br /&gt;
-- @param rowtype Either 'above' or 'below'&lt;br /&gt;
local function processAboveBelow( rowtype )&lt;br /&gt;
	if not args[rowtype] then return end&lt;br /&gt;
 &lt;br /&gt;
	local abrow = mw.html.create('tr'):addClass('navbox-'..rowtype)&lt;br /&gt;
	local abcell = mw.html.create('td'):attr('colspan',colspan):wikitext( args[rowtype] )&lt;br /&gt;
 &lt;br /&gt;
	if args[rowtype .. 'class'] then abrow:addClass( args[rowtype .. 'class'] ) end&lt;br /&gt;
	if args[rowtype .. 'style'] then abcell:cssText( args[rowtype .. 'style'] ) end&lt;br /&gt;
 &lt;br /&gt;
	abrow:node( abcell )&lt;br /&gt;
	_addGutter( navbox )&lt;br /&gt;
	navbox:node( abrow )&lt;br /&gt;
end&lt;br /&gt;
 &lt;br /&gt;
------------------------------------------------&lt;br /&gt;
-- Main Rows&lt;br /&gt;
------------------------------------------------&lt;br /&gt;
 &lt;br /&gt;
--- Processes the images&lt;br /&gt;
local function _processImage(row, imgtype)&lt;br /&gt;
	if not args[imgtype] then return end&lt;br /&gt;
 &lt;br /&gt;
	local iclass = imgtype == 'image' and 'navbox-image-right' or 'navbox-image-left'&lt;br /&gt;
 &lt;br /&gt;
	local imagecell = mw.html.create('td'):addClass('navbox-image'):addClass(iclass)&lt;br /&gt;
 &lt;br /&gt;
	local image = args[imgtype]&lt;br /&gt;
	if image:sub(1,1) ~= '[' then&lt;br /&gt;
		local width = args[imgtype .. 'width'] or '100px'&lt;br /&gt;
		imagecell:css('width',width):wikitext('['..'[' .. image  .. '|' .. width .. '|link=' .. (args[imgtype .. 'link'] or '') .. ']]')&lt;br /&gt;
	else&lt;br /&gt;
		imagecell:css('width','0%'):wikitext(image)&lt;br /&gt;
	end&lt;br /&gt;
 &lt;br /&gt;
	if args[imgtype .. 'class'] then imagecell:addClass( args[imgtype .. 'class'] ) end&lt;br /&gt;
	if args[imgtype .. 'style'] then imagecell:cssText( args[imgtype .. 'style'] ) end&lt;br /&gt;
 &lt;br /&gt;
	row:node( imagecell )&lt;br /&gt;
	if imgtype == 'image' then&lt;br /&gt;
		cimage = imagecell&lt;br /&gt;
	else&lt;br /&gt;
		cimageleft = imagecell&lt;br /&gt;
	end&lt;br /&gt;
end&lt;br /&gt;
 &lt;br /&gt;
--- Closes the currently active section (if any)&lt;br /&gt;
local function _closeCurrentSection()&lt;br /&gt;
	if not activeSection then return end&lt;br /&gt;
 &lt;br /&gt;
	local row = mw.html.create('tr'):addClass('navbox-section-row')&lt;br /&gt;
	local cell = mw.html.create('td'):attr('colspan',2)&lt;br /&gt;
 &lt;br /&gt;
	if not hasrows then&lt;br /&gt;
		_processImage(row,'imageleft')	&lt;br /&gt;
	end&lt;br /&gt;
 &lt;br /&gt;
	cell:node(sections[activeSection])&lt;br /&gt;
	row:node(cell)&lt;br /&gt;
 &lt;br /&gt;
	local firstRow = false&lt;br /&gt;
	if not hasrows then&lt;br /&gt;
		firstRow = true&lt;br /&gt;
		hasrows = true&lt;br /&gt;
		_processImage(row,'image')	&lt;br /&gt;
	end&lt;br /&gt;
 &lt;br /&gt;
	_addGutter(navbox,not firstRow)&lt;br /&gt;
	navbox:node(row)	&lt;br /&gt;
	rowspan = rowspan + 1&lt;br /&gt;
 &lt;br /&gt;
	activeSection = false&lt;br /&gt;
	hasData = false&lt;br /&gt;
end&lt;br /&gt;
 &lt;br /&gt;
--- Handles alternating rows&lt;br /&gt;
--&lt;br /&gt;
-- @return Alternatingly returns true or false. Always returns false if alternating rows&lt;br /&gt;
--         are disabled with &amp;quot;alternaterows = no&amp;quot;&lt;br /&gt;
local function _alternateRow()&lt;br /&gt;
	if args.alternaterows == 'no' then return false end&lt;br /&gt;
	if alt then&lt;br /&gt;
		alt = false&lt;br /&gt;
		return true&lt;br /&gt;
	else&lt;br /&gt;
		alt = true&lt;br /&gt;
		return false&lt;br /&gt;
	end&lt;br /&gt;
end&lt;br /&gt;
 &lt;br /&gt;
--- Process a single Header &amp;quot;row&amp;quot;&lt;br /&gt;
--&lt;br /&gt;
-- @param num Number of the row to be processed&lt;br /&gt;
local function processHeader(num)&lt;br /&gt;
	if not args['header'..num] then return end&lt;br /&gt;
 &lt;br /&gt;
	_closeCurrentSection()&lt;br /&gt;
 &lt;br /&gt;
	local subtable = mw.html.create('table'):addClass('navbox-section')&lt;br /&gt;
	local headerrow = mw.html.create('tr')&lt;br /&gt;
	local header = mw.html.create('th'):addClass('navbox-header'):attr('colspan',2):attr('scope','col'):wikitext( args['header'..num] )&lt;br /&gt;
 &lt;br /&gt;
	local collapseme = args['state'..num] or false&lt;br /&gt;
	local state = false&lt;br /&gt;
 &lt;br /&gt;
	if collapseme then&lt;br /&gt;
		-- Look at this one&lt;br /&gt;
		if collapseme ~= 'plain' then&lt;br /&gt;
			state = collapseme == 'expanded' and 'expanded' or 'collapsed'&lt;br /&gt;
		end&lt;br /&gt;
	else&lt;br /&gt;
		-- Look at default &lt;br /&gt;
		local collapseall = args.defaultstate or false&lt;br /&gt;
		if collapseall then&lt;br /&gt;
			state = collapseall == 'expanded' and 'expanded' or 'collapsed'	&lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
 &lt;br /&gt;
	if state then&lt;br /&gt;
		subtable:addClass('mw-collapsible'):attr('data-expandtext',args['expandtext'..num] or args['defaultexpandtext'] or showText):attr('data-collapsetext',args['collapsetext'..num] or args['defaultcollapsetext'] or hideText)&lt;br /&gt;
		if state == 'collapsed' then&lt;br /&gt;
			subtable:addClass('mw-collapsed')	&lt;br /&gt;
		end&lt;br /&gt;
		header:addClass('navbox-header-collapsible')&lt;br /&gt;
	end&lt;br /&gt;
 &lt;br /&gt;
	if args.headerclass then headerrow:addClass( args.headerclass ) end&lt;br /&gt;
	if args.headerstyle then header:cssText( args.headerstyle ) end&lt;br /&gt;
 &lt;br /&gt;
	headerrow:node(header)	&lt;br /&gt;
	subtable:node(headerrow)&lt;br /&gt;
 &lt;br /&gt;
	sections[num] = subtable&lt;br /&gt;
	activeSection = num&lt;br /&gt;
end&lt;br /&gt;
 &lt;br /&gt;
--- Processes a single list row&lt;br /&gt;
--&lt;br /&gt;
-- @param num Number of the row to be processed&lt;br /&gt;
local function processList(num)	&lt;br /&gt;
	if not args['list'..num] then return end&lt;br /&gt;
 &lt;br /&gt;
	local row = mw.html.create('tr'):addClass('navbox-row')&lt;br /&gt;
 &lt;br /&gt;
	if not hasrows and not activeSection then&lt;br /&gt;
		_processImage(row, 'imageleft')	&lt;br /&gt;
	end&lt;br /&gt;
 &lt;br /&gt;
	local listcell = mw.html.create('td'):addClass('navbox-list')&lt;br /&gt;
	local hlistcell = listcell:tag('div'):addClass('hlist')&lt;br /&gt;
 &lt;br /&gt;
	local data = args['list'..num]&lt;br /&gt;
 &lt;br /&gt;
	if data:sub(1,1) == '*' then&lt;br /&gt;
		-- Add newlines to support lists properly&lt;br /&gt;
		hlistcell&lt;br /&gt;
			:newline()&lt;br /&gt;
			:wikitext( data )&lt;br /&gt;
			:newline()&lt;br /&gt;
	else&lt;br /&gt;
		hlistcell:wikitext( data )&lt;br /&gt;
	end&lt;br /&gt;
 &lt;br /&gt;
	local altRow = _alternateRow()&lt;br /&gt;
	if altRow then&lt;br /&gt;
		row:addClass( args.altrowclass or 'alt' )&lt;br /&gt;
 &lt;br /&gt;
		local listclass = args.altlistclass or args.listclass or false&lt;br /&gt;
		if listclass then listcell:addClass( listclass ) end&lt;br /&gt;
 &lt;br /&gt;
		local liststyle = args.altliststyle or args.liststyle or false&lt;br /&gt;
		if liststyle then listcell:cssText( liststyle ) end&lt;br /&gt;
	else&lt;br /&gt;
		if args.rowclass then row:addClass( args.rowclass ) end&lt;br /&gt;
		if args.listclass then listcell:addClass( args.listclass ) end&lt;br /&gt;
		if args.liststyle then listcell:cssText( args.liststyle ) end&lt;br /&gt;
	end&lt;br /&gt;
 &lt;br /&gt;
	if args['group'..num] then&lt;br /&gt;
		local groupcell = mw.html.create('th'):addClass('navbox-group'):attr('scope','row'):wikitext( args['group'..num] )&lt;br /&gt;
 &lt;br /&gt;
		if altRow then&lt;br /&gt;
			local groupclass = args.altgroupclass or args.groupclass or false&lt;br /&gt;
			if groupclass then groupcell:addClass( groupclass ) end&lt;br /&gt;
 &lt;br /&gt;
			local groupstyle = args.altgroupstyle or args.groupstyle or false&lt;br /&gt;
			if groupstyle then groupcell:cssText( groupstyle ) end&lt;br /&gt;
		else	&lt;br /&gt;
			if args.groupclass then groupcell:addClass( args.groupclass ) end&lt;br /&gt;
			if args.groupstyle then groupcell:cssText( args.groupstyle ) end&lt;br /&gt;
		end&lt;br /&gt;
 &lt;br /&gt;
		row:node( groupcell )&lt;br /&gt;
	else&lt;br /&gt;
		listcell:attr('colspan',2):addClass('no-group')&lt;br /&gt;
	end&lt;br /&gt;
 &lt;br /&gt;
	row:node( listcell )&lt;br /&gt;
 &lt;br /&gt;
	local firstRow = false&lt;br /&gt;
	if not hasrows and not activeSection then&lt;br /&gt;
		firstRow = true&lt;br /&gt;
		hasrows = true&lt;br /&gt;
		_processImage(row, 'image')&lt;br /&gt;
	end&lt;br /&gt;
 &lt;br /&gt;
	if activeSection then&lt;br /&gt;
		local parent = sections[activeSection]&lt;br /&gt;
		if not isChild or not firstRow then&lt;br /&gt;
			_addGutter(parent)&lt;br /&gt;
		end&lt;br /&gt;
		parent:node(row)&lt;br /&gt;
		hasData = true&lt;br /&gt;
	else&lt;br /&gt;
		if not isChild or not firstRow then&lt;br /&gt;
			_addGutter(navbox,not firstRow)&lt;br /&gt;
		end&lt;br /&gt;
		navbox:node( row )&lt;br /&gt;
		rowspan = rowspan + 1&lt;br /&gt;
	end&lt;br /&gt;
end&lt;br /&gt;
 &lt;br /&gt;
--- Processes all rows&lt;br /&gt;
local function processRows()&lt;br /&gt;
	sections = {}&lt;br /&gt;
	for i=1,#rownums do&lt;br /&gt;
		local num = rownums[i]&lt;br /&gt;
		if not skiprows[num] then&lt;br /&gt;
			processHeader(num)&lt;br /&gt;
			processList(num)&lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
	_closeCurrentSection()&lt;br /&gt;
 &lt;br /&gt;
	if cimageleft then&lt;br /&gt;
		cimageleft:attr('rowspan',rowspan)		&lt;br /&gt;
	end&lt;br /&gt;
	if cimage then&lt;br /&gt;
		cimage:attr('rowspan',rowspan)&lt;br /&gt;
	end&lt;br /&gt;
end&lt;br /&gt;
 &lt;br /&gt;
------------------------------------------------&lt;br /&gt;
-- ARGUMENTS PREPROCESSOR&lt;br /&gt;
-- * Extracts arguments from frame and stores them in args table&lt;br /&gt;
-- * At the same time, checks for valid row numbers&lt;br /&gt;
------------------------------------------------&lt;br /&gt;
 &lt;br /&gt;
--- Preprocessor for the arguments.&lt;br /&gt;
-- Will fill up the args table with the parameters from the frame grouped by their type.&lt;br /&gt;
--&lt;br /&gt;
-- @param frame The frame passed to the Module.&lt;br /&gt;
local function preProcessArgs(frame)&lt;br /&gt;
	local tmp = {}&lt;br /&gt;
 &lt;br /&gt;
	if frame == mw.getCurrentFrame() then&lt;br /&gt;
		tmp = frame:getParent().args&lt;br /&gt;
	else&lt;br /&gt;
		tmp = frame&lt;br /&gt;
	end&lt;br /&gt;
 &lt;br /&gt;
	-- Storage tables&lt;br /&gt;
	local nums = {}&lt;br /&gt;
 &lt;br /&gt;
	-- Loop over all the args&lt;br /&gt;
	for k,v in pairs(tmp) do&lt;br /&gt;
		-- Skip empty args, which are useless&lt;br /&gt;
		if v ~= '' then&lt;br /&gt;
			local cat,num = tostring(k):match('^(%a+)([1-9]%d*)$')&lt;br /&gt;
 &lt;br /&gt;
			if cat == 'header' or cat == 'list' then&lt;br /&gt;
				nums[num] = true&lt;br /&gt;
			end&lt;br /&gt;
 &lt;br /&gt;
			args[k] = v -- Simple copy&lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
 &lt;br /&gt;
	colspan = args.image and 3 or 2&lt;br /&gt;
	if args.imageleft then colspan = colspan + 1 end&lt;br /&gt;
	rowspan = 0&lt;br /&gt;
 &lt;br /&gt;
	if args.alternaterows == 'swap' then&lt;br /&gt;
		alt = true&lt;br /&gt;
	end&lt;br /&gt;
 &lt;br /&gt;
	for k, v in pairs(nums) do&lt;br /&gt;
		rownums[#rownums+1] = tonumber(k)&lt;br /&gt;
	end&lt;br /&gt;
 &lt;br /&gt;
	table.sort(rownums)&lt;br /&gt;
 &lt;br /&gt;
	-- Calculate skip rows&lt;br /&gt;
	local cSection, cSkip&lt;br /&gt;
	local showall = args.showall&lt;br /&gt;
	for i=1,#rownums do&lt;br /&gt;
		local num = rownums[i]&lt;br /&gt;
		if args['header'..num] then&lt;br /&gt;
			cSection = true&lt;br /&gt;
			cSkip = false&lt;br /&gt;
			local showme = args['show'..num]&lt;br /&gt;
			if showme == 'no' then&lt;br /&gt;
				cSkip = true&lt;br /&gt;
			elseif showme == 'auto' or (showme ~= 'yes' and showall ~= 'yes') then&lt;br /&gt;
				if not args['list'..num] then&lt;br /&gt;
					local nextNum = rownums[i+1]&lt;br /&gt;
					cSkip = not nextNum or args['header'..nextNum] -- If next has a header -&amp;gt; skip&lt;br /&gt;
				end&lt;br /&gt;
			end&lt;br /&gt;
		end&lt;br /&gt;
		if cSection and cSkip then&lt;br /&gt;
			skiprows[num] = true&lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
end&lt;br /&gt;
 &lt;br /&gt;
------------------------------------------------&lt;br /&gt;
-- MAIN FUNCTIONS&lt;br /&gt;
------------------------------------------------&lt;br /&gt;
 &lt;br /&gt;
--- Processes the arguments to create the navbox.&lt;br /&gt;
--&lt;br /&gt;
-- @return A string with HTML that is the navbox.&lt;br /&gt;
local function _navbox()&lt;br /&gt;
	-- Create the root HTML element&lt;br /&gt;
	local trim = function(s)&lt;br /&gt;
		return s and mw.ustring.gsub(s, &amp;quot;^%s*(.-)%s*$&amp;quot;, &amp;quot;%1&amp;quot;) or ''&lt;br /&gt;
	end&lt;br /&gt;
	local border = args.border or trim(args[1])  or ''&lt;br /&gt;
	isChild = (border == 'child' or border == 'subgroup')&lt;br /&gt;
 &lt;br /&gt;
	if isChild then&lt;br /&gt;
		navbox = mw.html.create('table'):addClass('navbox-subgroup')&lt;br /&gt;
	else&lt;br /&gt;
		navbox = mw.html.create('table'):addClass('navbox')&lt;br /&gt;
 &lt;br /&gt;
		if args.state ~= 'plain' then&lt;br /&gt;
			navbox:addClass('mw-collapsible'):attr('data-expandtext',args['expandtext'] or args['defaultexpandtext'] or showText):attr('data-collapsetext',args['collapsetext'] or args['defaultcollapsetext'] or hideText)&lt;br /&gt;
			if args.state == 'collapsed' then&lt;br /&gt;
				navbox:addClass('mw-collapsed')&lt;br /&gt;
			end&lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
 &lt;br /&gt;
 	if args.bodyclass then navbox:addClass(args.bodyclass) end&lt;br /&gt;
	if args.bodystyle then navbox:cssText(args.bodystyle) end&lt;br /&gt;
 &lt;br /&gt;
	-- Process...&lt;br /&gt;
	if not isChild then&lt;br /&gt;
		processTitle()&lt;br /&gt;
		processAboveBelow('above')&lt;br /&gt;
		processRows()&lt;br /&gt;
		processAboveBelow('below')&lt;br /&gt;
 &lt;br /&gt;
		return tostring(navbox)&lt;br /&gt;
	else&lt;br /&gt;
		processRows()&lt;br /&gt;
 &lt;br /&gt;
		local wrapper = mw.html.create('')&lt;br /&gt;
		wrapper:wikitext('&amp;lt;/div&amp;gt;')&lt;br /&gt;
		wrapper:node(navbox)&lt;br /&gt;
		wrapper:wikitext('&amp;lt;div class=&amp;quot;hlist&amp;quot;&amp;gt;')&lt;br /&gt;
		return tostring(wrapper)&lt;br /&gt;
	end&lt;br /&gt;
end&lt;br /&gt;
 &lt;br /&gt;
--- Main module entry point.&lt;br /&gt;
-- To be called with {{#invoke:navbox|main}} or directly from another module.&lt;br /&gt;
--&lt;br /&gt;
-- @param frame The frame passed to the module via the #invoke. If called from another&lt;br /&gt;
--              module directly, this should be a table with the parameter definition.&lt;br /&gt;
function p.main(frame)&lt;br /&gt;
	-- Save the arguments in a local variable so other functions can use them.&lt;br /&gt;
	preProcessArgs(frame)&lt;br /&gt;
 &lt;br /&gt;
	return _navbox()&lt;br /&gt;
end&lt;br /&gt;
 &lt;br /&gt;
return p&lt;/div&gt;</summary>
		<author><name>Tviggy</name></author>
	</entry>
</feed>