 <?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://mwstake.org/w/index.php?action=history&amp;feed=atom&amp;title=Module%3AVandal-m</id>
	<title>Module:Vandal-m - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://mwstake.org/w/index.php?action=history&amp;feed=atom&amp;title=Module%3AVandal-m"/>
	<link rel="alternate" type="text/html" href="https://mwstake.org/w/index.php?title=Module:Vandal-m&amp;action=history"/>
	<updated>2026-05-25T00:29:46Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.39.6</generator>
	<entry>
		<id>https://mwstake.org/w/index.php?title=Module:Vandal-m&amp;diff=1453&amp;oldid=prev</id>
		<title>Mark Hershberger: 1 revision imported</title>
		<link rel="alternate" type="text/html" href="https://mwstake.org/w/index.php?title=Module:Vandal-m&amp;diff=1453&amp;oldid=prev"/>
		<updated>2019-04-23T17:56:29Z</updated>

		<summary type="html">&lt;p&gt;1 revision imported&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 13:56, 23 April 2019&lt;/td&gt;
				&lt;/tr&gt;
&lt;!-- diff cache key mediawiki:diff::1.12:old-1452:rev-1453 --&gt;
&lt;/table&gt;</summary>
		<author><name>Mark Hershberger</name></author>
	</entry>
	<entry>
		<id>https://mwstake.org/w/index.php?title=Module:Vandal-m&amp;diff=1452&amp;oldid=prev</id>
		<title>enwiki&gt;Jackmcbarn: always use Module:Su, and use the right function name</title>
		<link rel="alternate" type="text/html" href="https://mwstake.org/w/index.php?title=Module:Vandal-m&amp;diff=1452&amp;oldid=prev"/>
		<updated>2014-06-27T16:47:22Z</updated>

		<summary type="html">&lt;p&gt;always use Module:Su, and use the right function name&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;-- This module implements {{vandal-m}}.&lt;br /&gt;
&lt;br /&gt;
local p = {}&lt;br /&gt;
&lt;br /&gt;
local su = require('Module:Su')._main&lt;br /&gt;
&lt;br /&gt;
local function makeWikilink(link, display)&lt;br /&gt;
	if display then&lt;br /&gt;
		return string.format('[[%s|%s]]', link, display)&lt;br /&gt;
	else&lt;br /&gt;
		return string.format('[[%s]]', link)&lt;br /&gt;
	end&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
local function makeUrlLink(data, display)&lt;br /&gt;
	local url = mw.uri.new(data)&lt;br /&gt;
	url = tostring(url)&lt;br /&gt;
	return string.format('[%s %s]', url, display)&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
local function makeFullUrlLink(page, query, display)&lt;br /&gt;
	local url = mw.uri.fullUrl(page, query)&lt;br /&gt;
	url = tostring(url)&lt;br /&gt;
	return string.format('[%s %s]', url, display)&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
local function getTitle(page)&lt;br /&gt;
	local success, title = pcall(mw.title.new, page)&lt;br /&gt;
	if success then&lt;br /&gt;
		return title&lt;br /&gt;
	else&lt;br /&gt;
		return nil&lt;br /&gt;
	end&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
local function getLinkIfExists(pagePrefix, username, display)&lt;br /&gt;
	local title = getTitle(pagePrefix .. username)&lt;br /&gt;
	if title and title.exists then&lt;br /&gt;
		return makeWikilink(title.prefixedText, display)&lt;br /&gt;
	end&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
function p.main(frame)&lt;br /&gt;
	local args = require('Module:Arguments').getArgs(frame, {parentOnly = true})&lt;br /&gt;
	return p._main(args)&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
function p._main(args)&lt;br /&gt;
	local username, usernameEncoded&lt;br /&gt;
	do&lt;br /&gt;
		local lang = mw.language.getContentLanguage()&lt;br /&gt;
		username = args.User or args[1] or 'Example'&lt;br /&gt;
		username = lang:ucfirst(username)&lt;br /&gt;
		usernameEncoded = mw.uri.encode(username)&lt;br /&gt;
	end&lt;br /&gt;
&lt;br /&gt;
	local links = {}&lt;br /&gt;
&lt;br /&gt;
	-- Talk&lt;br /&gt;
	links[#links + 1] = makeWikilink('User talk:' .. username, 'talk')&lt;br /&gt;
&lt;br /&gt;
	-- Contribs&lt;br /&gt;
	links[#links + 1] = makeWikilink(&lt;br /&gt;
		'Special:Contributions/' .. username,&lt;br /&gt;
		'&amp;lt;span title=&amp;quot;Contributions: ' .. username .. '&amp;quot;&amp;gt;contribs&amp;lt;/span&amp;gt;'&lt;br /&gt;
	)&lt;br /&gt;
&lt;br /&gt;
	-- Block log and autoblocks&lt;br /&gt;
	do&lt;br /&gt;
		local blockLogLink = makeFullUrlLink(&lt;br /&gt;
			'Special:Log/block',&lt;br /&gt;
			{page = 'User:' .. username},&lt;br /&gt;
			'&amp;lt;span title=&amp;quot;Blocklog: '&lt;br /&gt;
				.. username&lt;br /&gt;
				.. '&amp;quot; style=&amp;quot;color:#002bb8&amp;quot;&amp;gt;block&amp;amp;nbsp;log&amp;lt;/span&amp;gt;'&lt;br /&gt;
		)&lt;br /&gt;
		local autoblocksLink = makeUrlLink(&lt;br /&gt;
			{&lt;br /&gt;
				host = 'tools.wmflabs.org',&lt;br /&gt;
				path = '/xtools/autoblock/',&lt;br /&gt;
				query = {user = username}&lt;br /&gt;
			},&lt;br /&gt;
			'&amp;lt;sup title=&amp;quot;Autoblock: '&lt;br /&gt;
				.. username&lt;br /&gt;
				.. '&amp;quot; style=&amp;quot;color:#002bb8&amp;quot;&amp;gt;auto&amp;lt;/sup&amp;gt;'&lt;br /&gt;
		)&lt;br /&gt;
		links[#links + 1] = blockLogLink .. autoblocksLink&lt;br /&gt;
	end&lt;br /&gt;
&lt;br /&gt;
	-- Ban listing&lt;br /&gt;
	if args.ban then&lt;br /&gt;
		links[#links + 1] = makeWikilink(&lt;br /&gt;
			mw.site.namespaces[4].name .. 'List of banned users#' .. username,&lt;br /&gt;
			'ban'&lt;br /&gt;
		)&lt;br /&gt;
	end&lt;br /&gt;
&lt;br /&gt;
	-- Arbitration requests&lt;br /&gt;
	links[#links + 1] = getLinkIfExists(&lt;br /&gt;
		'Wikipedia:Requests for arbitration/',&lt;br /&gt;
		username,&lt;br /&gt;
		'rfarb'&lt;br /&gt;
	)&lt;br /&gt;
&lt;br /&gt;
	-- Requests for comment&lt;br /&gt;
	links[#links + 1] = getLinkIfExists(&lt;br /&gt;
		'Wikipedia:Requests for comment/',&lt;br /&gt;
		username,&lt;br /&gt;
		'rfcuser'&lt;br /&gt;
	)&lt;br /&gt;
&lt;br /&gt;
	-- Long-term abuse&lt;br /&gt;
	links[#links + 1] = getLinkIfExists(&lt;br /&gt;
		'Wikipedia:Long term abuse/',&lt;br /&gt;
		username,&lt;br /&gt;
		'lta'&lt;br /&gt;
	)&lt;br /&gt;
&lt;br /&gt;
	-- Requests for checkuser&lt;br /&gt;
	links[#links + 1] = getLinkIfExists(&lt;br /&gt;
		'Wikipedia:Requests for checkuser/Case/',&lt;br /&gt;
		username,&lt;br /&gt;
		'rfcu'&lt;br /&gt;
	)&lt;br /&gt;
&lt;br /&gt;
	-- Sockpuppet investigations&lt;br /&gt;
	links[#links + 1] = getLinkIfExists(&lt;br /&gt;
		'Wikipedia:Sockpuppet investigations/',&lt;br /&gt;
		username,&lt;br /&gt;
		'spi'&lt;br /&gt;
	)&lt;br /&gt;
&lt;br /&gt;
	-- Suspected sockpuppets&lt;br /&gt;
	links[#links + 1] = getLinkIfExists(&lt;br /&gt;
		'Wikipedia:Suspected sock puppets/',&lt;br /&gt;
		username,&lt;br /&gt;
		'ssp'&lt;br /&gt;
	)&lt;br /&gt;
&lt;br /&gt;
	-- Sockpuppet categories&lt;br /&gt;
	-- There isn't a seperator between these and the suspected sockpuppets link,&lt;br /&gt;
	-- so we will add them later instead of adding them to the links table.&lt;br /&gt;
	local sockCategoryLinks&lt;br /&gt;
	do&lt;br /&gt;
		local confirmed = getTitle(&lt;br /&gt;
			'Category:Wikipedia sockpuppets of ' .. username&lt;br /&gt;
		)&lt;br /&gt;
		local suspected = getTitle(&lt;br /&gt;
			'Category:Suspected Wikipedia sockpuppets of ' .. username&lt;br /&gt;
		)&lt;br /&gt;
		if confirmed and confirmed.exists or suspected and suspected.exists then&lt;br /&gt;
			local sup, sub&lt;br /&gt;
			if confirmed and confirmed.exists then&lt;br /&gt;
				sup = '&amp;amp;ensp;' .. makeWikilink(&lt;br /&gt;
					':' .. confirmed.prefixedText,&lt;br /&gt;
					'confirmed&amp;amp;nbsp;socks'&lt;br /&gt;
				)&lt;br /&gt;
			end&lt;br /&gt;
			if suspected and suspected.exists then&lt;br /&gt;
				sub = '&amp;amp;ensp;' .. makeWikilink(&lt;br /&gt;
					':' .. suspected.prefixedText,&lt;br /&gt;
					'suspected&amp;amp;nbsp;socks'&lt;br /&gt;
				)&lt;br /&gt;
			end&lt;br /&gt;
			sockCategoryLinks = su(sup, sub)&lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
&lt;br /&gt;
	-- Add the user link and the outer span tags.&lt;br /&gt;
	return string.format(&lt;br /&gt;
		'&amp;lt;span id=&amp;quot;%s&amp;quot; class=&amp;quot;plainlinks&amp;quot;&amp;gt;%s (%s%s)&amp;lt;/span&amp;gt;',&lt;br /&gt;
		username,&lt;br /&gt;
		makeWikilink('User:' .. username, username),&lt;br /&gt;
		table.concat(links, ' &amp;amp;bull; '),&lt;br /&gt;
		sockCategoryLinks or ''&lt;br /&gt;
	)&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
return p&lt;/div&gt;</summary>
		<author><name>enwiki&gt;Jackmcbarn</name></author>
	</entry>
</feed>