Difference between revisions of "Module:See also"
From ChaldeanWiki
m (Protected Module:See also: High-risk Lua module ([Edit=Allow only template editors and admins] (indefinite) [Move=Allow only template editors and admins] (indefinite))) |
m (1 revision imported) |
||
(2 intermediate revisions by 2 users not shown) | |||
Line 48: | Line 48: | ||
local hnOptions = {} | local hnOptions = {} | ||
hnOptions.selfref = options.selfref | hnOptions.selfref = options.selfref | ||
− | |||
return mHatnote._hatnote(text, hnOptions) | return mHatnote._hatnote(text, hnOptions) |
Latest revision as of 20:02, 26 July 2015
Documentation for this module may be created at Module:See also/doc
--[[ -- This module produces a "See also: a, b and c" link. It implements the -- template {{see also}}. --]] local mHatnote = require('Module:Hatnote') local mTableTools -- lazily initialise local mArguments -- lazily initialise local p = {} function p.seealso(frame) mTableTools = require('Module:TableTools') mArguments = require('Module:Arguments') local args = mArguments.getArgs(frame, {parentOnly = true}) local pages = {} for k, v in pairs(args) do if type(k) == 'number' then local numstring = tostring(k) local display = args['label ' .. numstring] or args['l' .. numstring] local page = {v, display} pages[k] = page end end pages = mTableTools.compressSparseArray(pages) if not pages[1] then return mHatnote.makeWikitextError( 'no page names specified', 'Template:See also#Errors', args.category ) end local options = { altphrase = args.altphrase, selfref = args.selfref } return p._seealso(options, unpack(pages)) end function p._seealso(options, ...) local altphrase = options and options.altphrase or 'See also' local links = mHatnote.formatPageTables(...) links = mw.text.listToText(links) local text = altphrase .. ': ' .. links -- Pass options through. local hnOptions = {} hnOptions.selfref = options.selfref return mHatnote._hatnote(text, hnOptions) end return p