Sb forum speech.png DiscordLink.png FacebookLink.png RedditLink.png SteamLink.png TwitterLink.png YoutubeLink.png

Difference between revisions of "Module:SB Infobox Begin"

From Starbase wiki
Jump to navigation Jump to search
m
m
Line 17: Line 17:
function p.section(frame)
function p.section(frame)
local args = getArgs(frame)
local args = getArgs(frame)
--local remap = switch_key_val(args)
local remap = switch_key_val(args)
-- return p._section(args)
return p._section(remap)
local a, b = '', ''
for k, v in pairs(args) do
a = a .. tostring(k) .. ' = ' .. tostring(v) .. '\n'
end
for i, v in ipairs(args) do
b = b .. tostring(i) .. ' = ' .. tostring(v) .. '\n'
end
return('pairs: \n' .. a .. '\nipairs: ' .. b .. '\n' .. tostring(args[1]))
end
end


function p._section(args)
function p._section(args)
local output = ""
local output = ""
local s = ''
for k,v in pairs(args) do
mw.log('error message')
local newRow = mw.html.create('div')
for _,t in ipairs(args) do
if type(t) == 'table' then
for k, v in pairs(t) do
s = s .. tostring(k) .. ' = ' .. tostring(v) .. '\n'
end
else
return type(t) .. ' ' .. tostring(t)
end
s = 'yay'
end
return s
 
--[[local newRow = mw.html.create('div')
:addClass('SB-Infobox-Data-Cell')
:addClass('SB-Infobox-Data-Cell')
newRow:tag('div')
newRow:tag('div')
:addClass('SB-Infobox-Cell-Header')
:addClass('SB-Infobox-Cell-Header')
:wikitext(tostring(t))
:wikitext(tostring(v))
newRow:tag('div')
newRow:tag('div')
:addClass('SB-Infobox-Cell-Body')
:addClass('SB-Infobox-Cell-Body')
:wikitext(tostring(t))
:wikitext(tostring(k))
output = output .. tostring(newRow)
output = tostring(newRow) .. output
end
end
--return tostring(output)--]]
return tostring(output)
end
end



Revision as of 11:20, 25 May 2021

Documentation for this module may be created at Module:SB Infobox Begin/doc

local getArgs = require('Module:Arguments').getArgs
local p = {}

function switch_key_val(tbl)
    local rtbl = {}
    for k,v in pairs(tbl) do
        rtbl[v] = k
    end
    return rtbl
end

function p.main(frame)
	local args = getArgs(frame)
	return p._main(args)
end

function p.section(frame)
	local args = getArgs(frame)
	local remap = switch_key_val(args)
	return p._section(remap)
end

function p._section(args)
	local output = ""
	for k,v in pairs(args) do
		local newRow = mw.html.create('div')
			:addClass('SB-Infobox-Data-Cell')
			newRow:tag('div')
				:addClass('SB-Infobox-Cell-Header')
				:wikitext(tostring(v))
			newRow:tag('div')
				:addClass('SB-Infobox-Cell-Body')
				:wikitext(tostring(k))
		output = tostring(newRow) .. output
	end
	return tostring(output)
end

function p._main(args)
	local output = ""
	for k,v in pairs(args) do
		output = output .. tostring(v)
	end
	return tostring(output)
end

return p
Cookies help us deliver our services. By using our services, you agree to our use of cookies.