Misplaced Pages

Module:Singles

Article snapshot taken from[REDACTED] with creative commons attribution-sharealike license. Give it a read and then ask your questions in the chat. We can research this topic together.

This is an old revision of this page, as edited by Jackmcbarn (talk | contribs) at 23:18, 30 January 2014 (fix error). The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.

Revision as of 23:18, 30 January 2014 by Jackmcbarn (talk | contribs) (fix error)(diff) ← Previous revision | Latest revision (diff) | Newer revision → (diff) Module documentation[view] [edit] [history] [purge]

This module implements the {{Singles}} template. Please see the template page for usage instructions.

The above documentation is transcluded from Module:Singles/doc. (edit | history)
Editors can experiment in this module's sandbox (edit | diff) and testcases (create) pages.
Subpages of this module.

local p = {}

-- Ripped from Module:Infobox. TODO: Make a utility module that can do this kind of thing
local function getArgNums(frame, prefix)
    -- Returns a table containing the numbers of the arguments that exist
    -- for the specified prefix. For example, if the prefix was 'data', and
    -- 'data1', 'data2', and 'data5' exist, it would return {1, 2, 5}.
    local nums = {}
    for k, v in pairs(frame.args) do
        local num = tostring(k):match('^' .. prefix .. '(%d*)$')
        if num then table.insert(nums, tonumber(num)) end
    end
    table.sort(nums)
    return nums
end

function p.main(frame)
	local out = [=[<tr style="text-align:center;">
  <th style="background:{{Template:Infobox album/color|{{{Type|}}}}};" colspan="3">] from \'\'{{{Name}}}\'\'</th>
</tr>
<tr style="text-align:left; vertical-align:top; line-height:11px;">
  <td colspan="3">]=]
	local nums = getArgNums(frame, 'ingle ')
	for x,num in pairs(nums) do
		out = out .. '# <span class="item"><span class="fn">"' .. (args or args) .. '"</span>'
	end
	out = out .. [=[</td>
</tr>]=]
	return out
end

return p
Module:Singles Add topic