Anonymous user
Module:Redirect: Difference between revisions
restore p.getTargetFromText which is used by Module:RfD which is causing "Lua error in Module:RfD at line 87: attempt to call upvalue 'getTargetFromText' (a nil value)"
en>MSGJ (use mw.title.new, code by Galobtter and Rummskartoffel) |
en>Johnuniq (restore p.getTargetFromText which is used by Module:RfD which is causing "Lua error in Module:RfD at line 87: attempt to call upvalue 'getTargetFromText' (a nil value)") |
||
Line 12: | Line 12: | ||
return nil | return nil | ||
end | end | ||
end | |||
-- Gets the name of a page that a redirect leads to, or nil if it isn't a | |||
-- redirect. | |||
function p.getTargetFromText(text) | |||
local target = string.match( | |||
text, | |||
"^%s*#[Rr][Ee][Dd][Ii][Rr][Ee][Cc][Tt]%s*:?%s*%[%[([^%[%]|]-)%]%]" | |||
) or string.match( | |||
text, | |||
"^%s*#[Rr][Ee][Dd][Ii][Rr][Ee][Cc][Tt]%s*:?%s*%[%[([^%[%]|]-)|[^%[%]]-%]%]" | |||
) | |||
return target and mw.uri.decode(target, 'PATH') | |||
end | end | ||
Line 50: | Line 63: | ||
-- target page name, or the passed page name when not a redirect. The passed | -- target page name, or the passed page name when not a redirect. The passed | ||
-- page name can be given as plain text or as a page link. | -- page name can be given as plain text or as a page link. | ||
-- | -- | ||
-- Returns page name as plain text, or when the bracket parameter is given, as a | -- Returns page name as plain text, or when the bracket parameter is given, as a | ||
-- page link. Returns an error message when page does not exist or the redirect | -- page link. Returns an error message when page does not exist or the redirect |