<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://mywikibiz.com/index.php?action=history&amp;feed=atom&amp;title=Module%3APortal_toolbox</id>
	<title>Module:Portal toolbox - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://mywikibiz.com/index.php?action=history&amp;feed=atom&amp;title=Module%3APortal_toolbox"/>
	<link rel="alternate" type="text/html" href="https://mywikibiz.com/index.php?title=Module:Portal_toolbox&amp;action=history"/>
	<updated>2026-06-13T17:21:55Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.35.3</generator>
	<entry>
		<id>https://mywikibiz.com/index.php?title=Module:Portal_toolbox&amp;diff=479019&amp;oldid=prev</id>
		<title>Zoran: Pywikibot 6.4.0</title>
		<link rel="alternate" type="text/html" href="https://mywikibiz.com/index.php?title=Module:Portal_toolbox&amp;diff=479019&amp;oldid=prev"/>
		<updated>2021-07-16T05:24:30Z</updated>

		<summary type="html">&lt;p&gt;Pywikibot 6.4.0&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;local getArgs = require('Module:Arguments').getArgs&lt;br /&gt;
&lt;br /&gt;
p = {}&lt;br /&gt;
&lt;br /&gt;
local function add_header_row(frame, tbl, text)&lt;br /&gt;
	local row = tbl:tag('tr')&lt;br /&gt;
	row:tag('th')&lt;br /&gt;
		:attr('colspan', '2')&lt;br /&gt;
		:wikitext(text)&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
local function edit(frame, pagename)&lt;br /&gt;
	return frame:expandTemplate{ title='edit', args={ pagename } }&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
local function add_template_row(frame, tbl, pagename)&lt;br /&gt;
	local row = tbl:tag('tr')&lt;br /&gt;
	row:tag('td')&lt;br /&gt;
		:wikitext(frame:expandTemplate{ title='tl', args={ pagename } })&lt;br /&gt;
	row:tag('td')&lt;br /&gt;
		:wikitext(edit(frame, 'Template:' .. pagename))&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
local function add_wikilink_row(frame, tbl, pagename, text, right)&lt;br /&gt;
	local row = tbl:tag('tr')&lt;br /&gt;
	row:tag('td')&lt;br /&gt;
		:wikitext('[[' .. pagename .. '|' .. (text or pagename) .. ']]')&lt;br /&gt;
	row:tag('td')&lt;br /&gt;
		:wikitext(right or edit(frame, pagename))&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
local function add_section(frame, args, tbl, add_section_header, arg_prefix, page_prefix, row_function)&lt;br /&gt;
	if row_function == nil then&lt;br /&gt;
		row_function = add_wikilink_row&lt;br /&gt;
	end&lt;br /&gt;
	local nums = {}&lt;br /&gt;
	for k, _ in pairs(args) do&lt;br /&gt;
		if type(k) == 'string' then&lt;br /&gt;
			local num = k:match('^' .. arg_prefix .. '(%d+)$')&lt;br /&gt;
			if num then&lt;br /&gt;
				table.insert(nums, tonumber(num))&lt;br /&gt;
			end&lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
	if #nums == 0 then&lt;br /&gt;
		return&lt;br /&gt;
	end&lt;br /&gt;
	table.sort(nums)&lt;br /&gt;
	add_header_row(frame, tbl, add_section_header)&lt;br /&gt;
	for _, num in ipairs(nums) do&lt;br /&gt;
		local arg_name = arg_prefix .. num&lt;br /&gt;
		local arg = args[arg_name]&lt;br /&gt;
		local pagename = page_prefix .. arg&lt;br /&gt;
		local text = args[arg_name .. 'text']&lt;br /&gt;
		local right = args[arg_name .. 'right']&lt;br /&gt;
		row_function(frame, tbl, pagename, text or arg, right)&lt;br /&gt;
	end&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
local function main(frame)&lt;br /&gt;
	local args = getArgs(frame)&lt;br /&gt;
	local tbl = mw.html.create('table')&lt;br /&gt;
		:cssText('clear: right; float:right; border:1px navy solid;')&lt;br /&gt;
	tbl:tag('caption')&lt;br /&gt;
		:wikitext('Portal toolbox')&lt;br /&gt;
	add_header_row(frame, tbl, 'Main portal page')&lt;br /&gt;
	local rootTitle = mw.title.getCurrentTitle().rootPageTitle.subjectPageTitle&lt;br /&gt;
	add_wikilink_row(frame, tbl, rootTitle.fullText)&lt;br /&gt;
	&lt;br /&gt;
	add_section(frame, args, tbl, 'Static subpages', 'static', rootTitle.fullText .. '/')&lt;br /&gt;
	add_section(frame, args, tbl, 'Dynamic subpages', 'dynamic', rootTitle.fullText .. '/')&lt;br /&gt;
	add_section(frame, args, tbl, 'Templates', 'template', '', add_template_row)&lt;br /&gt;
	add_section(frame, args, tbl, 'Other', 'other', '')&lt;br /&gt;
	return tbl&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
p.main = main&lt;br /&gt;
&lt;br /&gt;
return p&lt;/div&gt;</summary>
		<author><name>Zoran</name></author>
	</entry>
</feed>