<?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%3AEvent_list</id>
	<title>Module:Event list - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://mywikibiz.com/index.php?action=history&amp;feed=atom&amp;title=Module%3AEvent_list"/>
	<link rel="alternate" type="text/html" href="https://mywikibiz.com/index.php?title=Module:Event_list&amp;action=history"/>
	<updated>2026-06-13T07:54:36Z</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:Event_list&amp;diff=471599&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:Event_list&amp;diff=471599&amp;oldid=prev"/>
		<updated>2021-07-15T21:29:08Z</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;-- this module implements [[Template:Event list]]&lt;br /&gt;
local p = {}&lt;br /&gt;
&lt;br /&gt;
local mArguments = require('Module:Arguments')&lt;br /&gt;
&lt;br /&gt;
function p.main(frame)&lt;br /&gt;
	local args = mArguments.getArgs(frame)&lt;br /&gt;
	&lt;br /&gt;
	local title = args['title'] or 'Chronology of events for ' .. mw.title.getCurrentTitle().text&lt;br /&gt;
	local cols = tonumber(args['columns'] or '2') or 2&lt;br /&gt;
	local datewidth = args['datewidth'] or '-1'&lt;br /&gt;
	local datealign = args['datealign'] or ''&lt;br /&gt;
	local collapse = args['collapse'] or 'collapsed'&lt;br /&gt;
&lt;br /&gt;
	-- append the suffix to the date width or set to auto&lt;br /&gt;
	if (tonumber(datewidth) or -1) &amp;gt;= 0 then&lt;br /&gt;
		datewidth = tonumber(datewidth) .. '%'&lt;br /&gt;
	else&lt;br /&gt;
		datewidth = 'auto'&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	-- build a list of event parameter numbers&lt;br /&gt;
	eventnums = {}&lt;br /&gt;
	for k,v in pairs(args) do&lt;br /&gt;
		local i = tonumber(tostring(k):match( '^%s*date([%d]+)%s*$' ) or '-1')&lt;br /&gt;
		if i ~= -1 then&lt;br /&gt;
			table.insert(eventnums, i)&lt;br /&gt;
		else&lt;br /&gt;
			i = tonumber(tostring(k):match( '^%s*event([%d]+)%s*$' ) or '-1')&lt;br /&gt;
			if i ~= -1 then&lt;br /&gt;
				table.insert(eventnums, i)&lt;br /&gt;
			else&lt;br /&gt;
				i = tonumber(k) or -1&lt;br /&gt;
				if i ~= -1 then&lt;br /&gt;
					table.insert(eventnums, math.floor((i+1)/2) )&lt;br /&gt;
				end&lt;br /&gt;
			end&lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
&lt;br /&gt;
	-- sort to process in order&lt;br /&gt;
	table.sort( eventnums )&lt;br /&gt;
	&lt;br /&gt;
	-- remove duplicates&lt;br /&gt;
	for k = 2,#eventnums do&lt;br /&gt;
		if eventnums[k] == eventnums[k-1] then&lt;br /&gt;
			table.remove(eventnums, k)&lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
&lt;br /&gt;
	-- create the root table&lt;br /&gt;
	local root = mw.html.create('table')&lt;br /&gt;
	root:addClass('wikitable')&lt;br /&gt;
		:addClass('collapsible')&lt;br /&gt;
		:addClass(collapse)&lt;br /&gt;
		:css('width', '100%')&lt;br /&gt;
	-- Add the title&lt;br /&gt;
	root:tag('tr'):tag('th'):attr('colspan', cols):wikitext(title)&lt;br /&gt;
	-- Create the row to hold the columns&lt;br /&gt;
	local outerrow = root:tag('tr'):css('vertical-align', 'top')&lt;br /&gt;
	local percol = math.ceil((#eventnums) / cols)&lt;br /&gt;
	k = 0&lt;br /&gt;
	for i = 1,cols do&lt;br /&gt;
		local outercell = outerrow:tag('td'):css('width', (math.floor(10/cols)/10) .. '%')&lt;br /&gt;
		local innertable = outercell:tag('table')&lt;br /&gt;
			:css('width', '100%')&lt;br /&gt;
			:css('border', 'none')&lt;br /&gt;
			:css('cellspacing', '-1px')&lt;br /&gt;
			:css('cellpadding', '0px')&lt;br /&gt;
			:css('margin', '-1px')&lt;br /&gt;
			:css('font-size', '88%')&lt;br /&gt;
			:css('line-height', '100%')&lt;br /&gt;
		local tr = innertable:tag('tr'):css('vertical-align', 'top')&lt;br /&gt;
		tr:tag('th')&lt;br /&gt;
			:attr('scope', 'col')&lt;br /&gt;
			:css('width', datewidth)&lt;br /&gt;
			:css('text-align', (datealign ~= '') and datealign or 'left')&lt;br /&gt;
			:css('border-bottom', '1px #aaa solid')&lt;br /&gt;
			:wikitext('Date')&lt;br /&gt;
		tr:tag('th')&lt;br /&gt;
			:attr('scope', 'col')&lt;br /&gt;
			:css('text-align', 'left')&lt;br /&gt;
			:css('border-bottom', '1px #aaa solid')&lt;br /&gt;
			:wikitext('Event description')&lt;br /&gt;
		for j=1,percol do&lt;br /&gt;
			k = k + 1&lt;br /&gt;
			if k &amp;lt;= #eventnums then&lt;br /&gt;
				local n = tonumber(eventnums[k])&lt;br /&gt;
				local d = (args['date' .. n] or '') .. (args[2*(n-1)+1] or '')&lt;br /&gt;
				local e = (args['event' .. n] or '') .. (args[2*(n-1)+2] or '')&lt;br /&gt;
				if d ~= '' or e ~= '' then&lt;br /&gt;
					tr = innertable:tag('tr'):css('vertical-align', 'top')&lt;br /&gt;
					tr:tag('td'):css('text-align',(datealign ~= '') and datealign or nil):wikitext(d)&lt;br /&gt;
					tr:tag('td'):wikitext(e)&lt;br /&gt;
				end&lt;br /&gt;
			end&lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
&lt;br /&gt;
	return tostring(root)&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
return p&lt;/div&gt;</summary>
		<author><name>Zoran</name></author>
	</entry>
</feed>