Toggle menu
9
205
64
18.8K
Kenshi Wiki
Toggle preferences menu
Toggle personal menu
Not logged in
Your IP address will be publicly visible if you make any edits.
Revision as of 03:46, 18 February 2025 by Prd (talk | contribs) (Created page with "--v1.0 local p = {} local yesno = require("Module:yesno") local function exists(title) local success, result = pcall(function() return title.exists end) if success then return result else return true end end function p.main(frame) local rawpages = {} local nvalid = 0 local namespace = frame.args.ns for i, v in ipairs(frame:getParent().args) do if (v ~= nil) then local thisArg = mw.text.trim(v) if (thisArg ~= "") then local title = mw.title.n...")
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Subpages:

Usage

Used by Template:see also if exists and Template:Category see also if exists.

{{#invoke:See also if exists| main}}


--[[ v1.0
]]
local p = {}
local yesno = require("Module:yesno")
local function exists(title)
	local success, result = pcall(function() return title.exists end)
	if success then
		return result
	else
		return true
	end
end
function p.main(frame)
	local rawpages = {}
	local nvalid = 0
	local namespace = frame.args.ns
	for i, v in ipairs(frame:getParent().args) do
		if (v ~= nil) then
			local thisArg = mw.text.trim(v)
			if (thisArg ~= "") then
				local title = mw.title.new(thisArg, namespace)
				if title ~= nil and exists(title) then
					table.insert(rawpages, title.fullText)
					nvalid = nvalid + 1
				end
			end
		end
	end
	if (nvalid == 0) then
		if yesno(frame.args.warning) then
			if namespace == nil then
				namespace = "page"
			elseif namespace:sub(-1) == "y" then
				namespace = namespace:sub(0, -2) .. "ie"
			end
			mw.addWarning(string.format("'''[[%s]] — no output, because none of the %ss currently exist.'''",
				frame:getParent():getTitle(),namespace))
		end
		return ""
	end
	local mLabelledList = require('Module:Labelled list hatnote')
	local pages = mLabelledList._labelledList(rawpages, "See also", "")
	return pages
end

return p
Contents