Module:SPI archive notice
Appearance
This module is subject to page protection. It is a highly visible module in use by a very large number of pages, or is substituted very frequently. Because vandalism or mistakes would affect many pages, and even trivial editing might cause substantial load on the servers, it is protected from editing. |
This Lua module is used on approximately 35,000 pages and changes may be widely noticed. Test changes in the module's /sandbox or /testcases subpages, or in your own module sandbox. Consider discussing changes on the talk page before implementing them. |
This module depends on the following other modules: |
Used by Template:SPI archive notice to automatically categorise if the master may not exist.
local mRedirect = require('Module:Redirect')
local getArgs = require('Module:Arguments').getArgs
local isIPOrRange = require('Module:IPAddress').isIpOrRange
local p = {}
-- function p.checkIfSPIMayNeedRename(frame)
-- local args = getArgs(frame)
-- return p._checkIfSPIMayNeedRename(args)
-- end
function p.checkIfSPIMayNeedRename(frame)
local args = getArgs(frame)
-- Fix capitlisation of the username
args[1] = mw.ustring.upper(args[1]:sub(1, 1)) .. args[1]:sub(2)
if (isIPOrRange(frame) ~= '') then
return 'no'
elseif (mw.title.new('User talk:' .. args[1]):getContent() == nil and mw.title.new('User:' .. args[1]):getContent() == nil) then
return 'yes_no_user_content'
else
local redirectTarget = mRedirect.getTarget('User talk:' .. args[1])
if (redirectTarget ~= nil) then
if (mw.ustring.find(redirectTarget, '^User:' .. args[1]) or mw.ustring.find(redirectTarget, '^User talk:' .. args[1])) then
return 'no'
else
return 'yes_redirected_elsewhere'
end
else
return 'no'
end
end
end
return p