Modul:IsIn: Unterschied zwischen den Versionen
Keine Bearbeitungszusammenfassung |
KKeine Bearbeitungszusammenfassung |
||
| Zeile 4: | Zeile 4: | ||
local page = mw.title.getCurrentTitle() | local page = mw.title.getCurrentTitle() | ||
local | local args = frame.args | ||
args.page = args.page or args[ 1 ] or '' | |||
targetPage = mw.ustring.gsub( | 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 ' | 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 ' | return 'wrongIsIn' | ||
else | else | ||
return | 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