Module:For related page: Difference between revisions
From Vigyanwiki
(Created page with "local mFor = require('Module:For') local mArguments = require('Module:Arguments') local p = {} function p.forFoo (frame) local args = mArguments.getArgs(frame, {parentOnl...") |
m (1 revision imported from alpha:Module:For_related_page) |
(One intermediate revision by one other user not shown) | |
(No difference)
|
Latest revision as of 18:56, 31 December 2022
Documentation for this module may be created at Module:For related page/doc
local mFor = require('Module:For')
local mArguments = require('Module:Arguments')
local p = {}
function p.forFoo (frame)
local args = mArguments.getArgs(frame,
{parentOnly = true}
)
local target
if args[1] then
target = args[1]
else
local title = mw.title.getCurrentTitle().text
local titles = {
mw.ustring.lower(mw.ustring.sub(title, 1, 1)) .. mw.ustring.sub(title, 2),
title
}
local forms = frame.args
for k, v in ipairs(forms) do
for i, j in pairs(titles) do
local lookup = string.format(v, j)
if mw.title.new(lookup, 0).exists then
target = lookup
break
end
end
if target then break end
end
target = target or string.format(forms[1], title)
end
return mFor._For({frame.args.what, target})
end
return p