<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en-GB">
	<id>https://stockhub.co/index.php?action=history&amp;feed=atom&amp;title=Module%3ASandbox%2FAjuanca%2FExtraTabular</id>
	<title>Module:Sandbox/Ajuanca/ExtraTabular - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://stockhub.co/index.php?action=history&amp;feed=atom&amp;title=Module%3ASandbox%2FAjuanca%2FExtraTabular"/>
	<link rel="alternate" type="text/html" href="https://stockhub.co/index.php?title=Module:Sandbox/Ajuanca/ExtraTabular&amp;action=history"/>
	<updated>2026-04-17T18:46:53Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.43.5</generator>
	<entry>
		<id>https://stockhub.co/index.php?title=Module:Sandbox/Ajuanca/ExtraTabular&amp;diff=145091&amp;oldid=prev</id>
		<title>imported&gt;Ajuanca: ←Created page with &#039;p = {} -- Join two tables. -- Number index are added over the first table. -- Other type of keys are added &quot;as they are&quot;. function p.join_tables(_table1, _table2...&#039;</title>
		<link rel="alternate" type="text/html" href="https://stockhub.co/index.php?title=Module:Sandbox/Ajuanca/ExtraTabular&amp;diff=145091&amp;oldid=prev"/>
		<updated>2020-09-28T08:04:52Z</updated>

		<summary type="html">&lt;p&gt;&lt;a href=&quot;/index.php?title=WP:AES&amp;amp;action=edit&amp;amp;redlink=1&quot; class=&quot;new&quot; title=&quot;WP:AES (page does not exist)&quot;&gt;←&lt;/a&gt;Created page with &amp;#039;p = {} -- Join two tables. -- Number index are added over the first table. -- Other type of keys are added &amp;quot;as they are&amp;quot;. function p.join_tables(_table1, _table2...&amp;#039;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;p = {}&lt;br /&gt;
-- Join two tables.&lt;br /&gt;
-- Number index are added over the first table.&lt;br /&gt;
-- Other type of keys are added &amp;quot;as they are&amp;quot;.&lt;br /&gt;
function p.join_tables(_table1, _table2)&lt;br /&gt;
	for k, arg in pairs(_table2) do&lt;br /&gt;
		if not tonumber(k) then&lt;br /&gt;
			_table1[k] = arg&lt;br /&gt;
		else&lt;br /&gt;
			table.insert(_table1, arg)&lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
	return _table1&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
-- Converts table data type to String.&lt;br /&gt;
-- Keys should be int numbers.&lt;br /&gt;
-- Values are concatenated with &amp;quot;, &amp;quot;&lt;br /&gt;
function p.table2string(_table)&lt;br /&gt;
	original_table = _table&lt;br /&gt;
	wrapped = &amp;quot;&amp;quot;&lt;br /&gt;
	for i=1, #original_table do&lt;br /&gt;
		wrapped = wrapped .. original_table[i] .. &amp;quot;, &amp;quot;&lt;br /&gt;
	end&lt;br /&gt;
	return wrapped:sub(0, -3)&lt;br /&gt;
end&lt;br /&gt;
	&lt;br /&gt;
function p.get_rows(frame)&lt;br /&gt;
	return p._get_rows(frame.args)&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
function p.string2table(_string)&lt;br /&gt;
	-- Should work for nested values.&lt;br /&gt;
	_string = &amp;quot;test,[home,cheese],[restaurant,pc]&amp;quot;&lt;br /&gt;
	ltable = {}&lt;br /&gt;
	for value in _string:gmatch(&amp;quot;%[(%[^%[%a+%])%]&amp;quot;) do&lt;br /&gt;
		if string:find(value, &amp;quot;[^%[]&amp;quot;) then&lt;br /&gt;
			ntable = {}&lt;br /&gt;
			for column in value:gmatch(&amp;quot;[^,]+&amp;quot;) do&lt;br /&gt;
				table.insert(ntable, column)&lt;br /&gt;
			end&lt;br /&gt;
			table.insert(ltable, ntable)&lt;br /&gt;
		else&lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
	return mw.logObject(ltable)&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
function p._get_rows(args)&lt;br /&gt;
	local page = args.src or args[1]&lt;br /&gt;
	local data = mw.ext.data.get(page)&lt;br /&gt;
	local columns_input = args.columns or args[2]&lt;br /&gt;
	local columns_table = p.string2table(column_input)&lt;br /&gt;
	-- local column_names = args.column_names or args[2]&lt;br /&gt;
	-- local column_groups = args.column_groups or args[3]&lt;br /&gt;
	-- Also optional title for rows should be included.&lt;br /&gt;
	local date_name = args.date_name or args[3]&lt;br /&gt;
	rows = {}&lt;br /&gt;
	rows.titles = {}&lt;br /&gt;
	rows.values = {}&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
return p&lt;/div&gt;</summary>
		<author><name>imported&gt;Ajuanca</name></author>
	</entry>
</feed>