Modul:IsIn: Unterschied zwischen den Versionen

Aus skandinavien-wiki.net
Keine Bearbeitungszusammenfassung
KKeine Bearbeitungszusammenfassung
Zeile 4: Zeile 4:
local page = mw.title.getCurrentTitle()
local page = mw.title.getCurrentTitle()


local targetPage = frame.args.page or frame.args[ 1 ] or ''
local args = frame.args
targetPage = mw.text.trim( targetPage )
args.page = args.page or args[ 1 ] or ''
targetPage = mw.ustring.gsub( targetPage, '^' .. page.nsText .. ':', '' )
args.page = mw.text.trim( args.page )
local targetPage = mw.ustring.gsub( args.page, '^' .. page.nsText .. ':', '' )
if targetPage == '' or targetPage == page.text then
if targetPage == '' or targetPage == page.text then
return 'false'
return 'wrongIsIn'
end
end


Zeile 14: Zeile 15:
if not targetPage.exists or targetPage.isRedirect then
if not targetPage.exists or targetPage.isRedirect then
-- disambiguation cannot be checked
-- disambiguation cannot be checked
return 'false'
return 'wrongIsIn'
else
else
return 'true'
return args.page
end
end
end
end


return isIn
return isIn

Version vom 22. September 2020, 06:40 Uhr

Die Dokumentation für dieses Modul kann unter Modul:IsIn/doc erstellt werden

local isIn = {}

function isIn.checkTarget( frame )
	local page = mw.title.getCurrentTitle()

	local args = frame.args
	args.page = args.page or args[ 1 ] or ''
	args.page = mw.text.trim( args.page )
	local targetPage = mw.ustring.gsub( args.page, '^' .. page.nsText .. ':', '' )
	if targetPage == '' or targetPage == page.text then
		return 'wrongIsIn'
	end

	targetPage = mw.title.new( targetPage, page.nsText )
	if not targetPage.exists or targetPage.isRedirect then
		-- disambiguation cannot be checked
		return 'wrongIsIn'
	else
		return args.page
	end
end

return isIn