Module:For

From Project Mailer
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.

local mArguments --initialize lazily local mHatlist = require('Module:Hatnote list') local mHatnote = require('Module:Hatnote') local yesNo = require('Module:Yesno') local p = {}

--Implements Error: no context parameter provided. Use {{other uses}} for "other uses" hatnotes. (help). from the frame --uses capitalized "For" to avoid collision with Lua reserved word "for" function p.For (frame) mArguments = require('Module:Arguments') return p._For(mArguments.getArgs(frame)) end

--Implements Error: no context parameter provided. Use {{other uses}} for "other uses" hatnotes. (help). but takes a manual arguments table function p._For (args) local use = args[1] if (not use) then return mHatnote.makeWikitextError( 'no context parameter provided. Use Template:Other uses for "other uses" hatnotes.', 'Template:For#Errors', args.category ) end local pages = {} function two (a, b) return a, b, 1 end --lets us run ipairs from 2 for k, v in two(ipairs(args)) do table.insert(pages, v) end return mHatnote._hatnote( mHatlist.forSeeTableToString(Template:Use = use, pages = pages), {selfref = args.selfref} ) .. ( (use == 'other uses') and yesNo(args.category) and or ) end

return p