---------------------------------------------------------------------------------- This module holds extra link functions for use with .---- It is intended for experimenting with new link functions that will eventually-- be added to the main module code.---- Since this module is transcluded in only a small number of pages, changes-- should cause little server overhead and should propagate quickly.---- Link functions using the same link code as a function in the main module will-- be ignored; please give your function a unique code.--------------------------------------------------------------------------------
-- Load shared helper functionslocal mShared = require('Module:UserLinks/shared')local raiseError = mShared.raiseErrorlocal makeWikitextError = mShared.makeWikitextErrorlocal makeWikilink = mShared.makeWikilinklocal makeUrlLink = mShared.makeUrlLinklocal makeFullUrlLink = mShared.makeFullUrlLinklocal message = mShared.message
local linkFunctions =
function linkFunctions.coibot(snippets) -- COIBot report return makeWikilink(nil, 4, 'WikiProject Spam/UserReports/' .. snippets.username, 'COIBot' )end
function linkFunctions.ggl(snippets) -- Google search for the username return makeUrlLink('Google' )end
function linkFunctions.http(snippets) -- To see if an IP is serving a web page
local host = snippets.username if not host:match('^%d+%.%d+%.%d+%.%d+$') then if host:match('^[%x:]+$') then -- It's IPv6, use RFC 3986 IP-Literal syntax host = '[' .. host .. ']' else -- It's neither IPv4 nor IPv6, return nothing return end end
return makeUrlLink('http' )end
function linkFunctions.msg(snippets) -- New message on user talk page return makeFullUrlLink(snippets.interwiki .. 'Special:NewSection/', 3, snippets.username, , 'message' )end
function linkFunctions.rbl(snippets) -- Realtime blacklists return makeUrlLink('RBLs' )end
function linkFunctions.rdns(snippets) -- Reverse DNS lookup return makeUrlLink('RDNS' )end
function linkFunctions.sbx(snippets) -- User sandbox return makeWikilink(snippets.interwiki, 2, snippets.username .. '/sandbox', 'sandbox' )end
function linkFunctions.sfs(snippets) -- StopForumSpam return makeUrlLink('StopForumSpam' )end
function linkFunctions.sul2(snippets) -- Global contribs, Luxo's tool return makeUrlLink('global contribs' )end
function linkFunctions.uc(snippets) -- User creation return makeWikilink(snippets.interwiki, -1, 'Log/newusers/' .. snippets.username, 'user creation' )end
function linkFunctions.whois(snippets) -- WHOIS information for IPs return makeUrlLink('WHOIS' )end
function linkFunctions.wlh(snippets) -- Links to user page (what links here) return makeWikilink(snippets.interwiki, -1, 'WhatLinksHere/' .. mw.site.namespaces[2].name .. ':' .. snippets.username, 'links to user page' )end
function linkFunctions.cr(snippets) -- Change rights return makeWikilink(snippets.interwiki, -1, 'UserRights/' .. snippets.username, 'change rights' )end
return