Module:For: Difference between revisions
From Zoophilia Wiki
Jump to navigationJump to search
meta>Nihiltres m Simplified some stuff; result matches {{For}}'s terminating behaviour better |
meta>Nihiltres m Fixed capitalization error |
||
Line 8: | Line 8: | ||
function p.For (frame) | function p.For (frame) | ||
mArguments = require('Module:Arguments') | mArguments = require('Module:Arguments') | ||
return p. | return p._For(mArguments.getArgs(frame)) | ||
end | end | ||
Revision as of 21:34, 3 May 2016
This Lua module is used on 163,000+ pages. To avoid major disruption and server load, any changes should be tested in the module's /sandbox or /testcases subpages, or in your own module sandbox. The tested changes can be added to this page in a single edit. Consider discussing changes on the talk page before implementing them. |
This module is subject to page protection. It is a highly visible module in use by a very large number of pages, or is substituted very frequently. Because vandalism or mistakes would affect many pages, and even trivial editing might cause substantial load on the servers, it is protected from editing. |
Implements {{for}}.
local mArguments --initialize lazily
local mHatlist = require('Module:Hatnote list/sandbox') --remove "/sandbox" once forSeeTableToString is in main module
local mHatnote = require('Module:Hatnote')
local p = {}
--Implements {{For}} 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 {{For}} but takes a manual arguments table
function p._For (args)
local use = args[1] --cases with parameter 1 unspecified, i.e. using "other uses", should probably be flagged
local pages = {}
for k, v in ipairs(args) do
if k > 1 then table.insert(pages, v) end
end
return mHatnote._hatnote(
mHatlist.forSeeTableToString({{use = use, pages = pages}})
)
end
return p