<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://wiki.endmyopia.org/index.php?action=history&amp;feed=atom&amp;title=MediaWiki%3AGadget-twinkleunlink.js</id>
	<title>MediaWiki:Gadget-twinkleunlink.js - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.endmyopia.org/index.php?action=history&amp;feed=atom&amp;title=MediaWiki%3AGadget-twinkleunlink.js"/>
	<link rel="alternate" type="text/html" href="https://wiki.endmyopia.org/index.php?title=MediaWiki:Gadget-twinkleunlink.js&amp;action=history"/>
	<updated>2026-09-17T08:01:08Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.43.9</generator>
	<entry>
		<id>https://wiki.endmyopia.org/index.php?title=MediaWiki:Gadget-twinkleunlink.js&amp;diff=8589&amp;oldid=prev</id>
		<title>NottNott: 1 revision imported</title>
		<link rel="alternate" type="text/html" href="https://wiki.endmyopia.org/index.php?title=MediaWiki:Gadget-twinkleunlink.js&amp;diff=8589&amp;oldid=prev"/>
		<updated>2020-06-12T10:46:06Z</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 10:46, 12 June 2020&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;4&quot; class=&quot;diff-notice&quot; lang=&quot;en&quot;&gt;&lt;div class=&quot;mw-diff-empty&quot;&gt;(No difference)&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;!-- diff cache key jakeendmy_mw1720-mwnr_:diff:1.41:old-8588:rev-8589 --&gt;
&lt;/table&gt;</summary>
		<author><name>NottNott</name></author>
	</entry>
	<entry>
		<id>https://wiki.endmyopia.org/index.php?title=MediaWiki:Gadget-twinkleunlink.js&amp;diff=8588&amp;oldid=prev</id>
		<title>en&gt;Amorymeltzer: Repo at 712686d: Add Morebits.userIsSysop, use everywhere instead of Morebits.userIsInGroup</title>
		<link rel="alternate" type="text/html" href="https://wiki.endmyopia.org/index.php?title=MediaWiki:Gadget-twinkleunlink.js&amp;diff=8588&amp;oldid=prev"/>
		<updated>2020-03-04T17:42:42Z</updated>

		<summary type="html">&lt;p&gt;Repo at 712686d: Add Morebits.userIsSysop, use everywhere instead of Morebits.userIsInGroup&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;// &amp;lt;nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
(function($) {&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
/*&lt;br /&gt;
 ****************************************&lt;br /&gt;
 *** twinkleunlink.js: Unlink module&lt;br /&gt;
 ****************************************&lt;br /&gt;
 * Mode of invocation:     Tab (&amp;quot;Unlink&amp;quot;)&lt;br /&gt;
 * Active on:              Non-special pages, except Wikipedia:Sandbox&lt;br /&gt;
 */&lt;br /&gt;
&lt;br /&gt;
Twinkle.unlink = function twinkleunlink() {&lt;br /&gt;
	if (mw.config.get(&amp;#039;wgNamespaceNumber&amp;#039;) &amp;lt; 0 || mw.config.get(&amp;#039;wgPageName&amp;#039;) === &amp;#039;Wikipedia:Sandbox&amp;#039; ||&lt;br /&gt;
		// Restrict to extended confirmed users (see #428)&lt;br /&gt;
		(!Morebits.userIsInGroup(&amp;#039;extendedconfirmed&amp;#039;) &amp;amp;&amp;amp; !Morebits.userIsSysop)) {&lt;br /&gt;
		return;&lt;br /&gt;
	}&lt;br /&gt;
	Twinkle.addPortletLink(Twinkle.unlink.callback, &amp;#039;Unlink&amp;#039;, &amp;#039;tw-unlink&amp;#039;, &amp;#039;Unlink backlinks&amp;#039;);&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
Twinkle.unlink.getChecked2 = function twinkleunlinkGetChecked2(nodelist) {&lt;br /&gt;
	if (!(nodelist instanceof NodeList) &amp;amp;&amp;amp; !(nodelist instanceof HTMLCollection)) {&lt;br /&gt;
		return nodelist.checked ? [ nodelist.values ] : [];&lt;br /&gt;
	}&lt;br /&gt;
	var result = [];&lt;br /&gt;
	for (var i = 0; i &amp;lt; nodelist.length; ++i) {&lt;br /&gt;
		if (nodelist[i].checked) {&lt;br /&gt;
			result.push(nodelist[i].values);&lt;br /&gt;
		}&lt;br /&gt;
	}&lt;br /&gt;
	return result;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
// the parameter is used when invoking unlink from admin speedy&lt;br /&gt;
Twinkle.unlink.callback = function(presetReason) {&lt;br /&gt;
	var Window = new Morebits.simpleWindow(600, 440);&lt;br /&gt;
	Window.setTitle(&amp;#039;Unlink backlinks&amp;#039; + (mw.config.get(&amp;#039;wgNamespaceNumber&amp;#039;) === 6 ? &amp;#039; and file usages&amp;#039; : &amp;#039;&amp;#039;));&lt;br /&gt;
	Window.setScriptName(&amp;#039;Twinkle&amp;#039;);&lt;br /&gt;
	Window.addFooterLink(&amp;#039;Twinkle help&amp;#039;, &amp;#039;WP:TW/DOC#unlink&amp;#039;);&lt;br /&gt;
&lt;br /&gt;
	var form = new Morebits.quickForm(Twinkle.unlink.callback.evaluate);&lt;br /&gt;
&lt;br /&gt;
	// prepend some basic documentation&lt;br /&gt;
	var node1 = Morebits.htmlNode(&amp;#039;code&amp;#039;, &amp;#039;[[&amp;#039; + Morebits.pageNameNorm + &amp;#039;|link text]]&amp;#039;);&lt;br /&gt;
	var node2 = Morebits.htmlNode(&amp;#039;code&amp;#039;, &amp;#039;link text&amp;#039;);&lt;br /&gt;
	node1.style.fontFamily = node2.style.fontFamily = &amp;#039;monospace&amp;#039;;&lt;br /&gt;
	node1.style.fontStyle = node2.style.fontStyle = &amp;#039;normal&amp;#039;;&lt;br /&gt;
	form.append({&lt;br /&gt;
		type: &amp;#039;div&amp;#039;,&lt;br /&gt;
		style: &amp;#039;margin-bottom: 0.5em&amp;#039;,&lt;br /&gt;
		label: [&lt;br /&gt;
			&amp;#039;This tool allows you to unlink all incoming links (&amp;quot;backlinks&amp;quot;) that point to this page&amp;#039; +&lt;br /&gt;
				(mw.config.get(&amp;#039;wgNamespaceNumber&amp;#039;) === 6 ? &amp;#039;, and/or hide all inclusions of this file by wrapping them in &amp;lt;!-- --&amp;gt; comment markup&amp;#039; : &amp;#039;&amp;#039;) +&lt;br /&gt;
				&amp;#039;. For instance, &amp;#039;,&lt;br /&gt;
			node1,&lt;br /&gt;
			&amp;#039; would become &amp;#039;,&lt;br /&gt;
			node2,&lt;br /&gt;
			&amp;#039;. Use it with caution.&amp;#039;&lt;br /&gt;
		]&lt;br /&gt;
	});&lt;br /&gt;
&lt;br /&gt;
	form.append({&lt;br /&gt;
		type: &amp;#039;input&amp;#039;,&lt;br /&gt;
		name: &amp;#039;reason&amp;#039;,&lt;br /&gt;
		label: &amp;#039;Reason: &amp;#039;,&lt;br /&gt;
		value: presetReason ? presetReason : &amp;#039;&amp;#039;,&lt;br /&gt;
		size: 60&lt;br /&gt;
	});&lt;br /&gt;
&lt;br /&gt;
	var query;&lt;br /&gt;
	if (mw.config.get(&amp;#039;wgNamespaceNumber&amp;#039;) === 6) {  // File:&lt;br /&gt;
		query = {&lt;br /&gt;
			&amp;#039;action&amp;#039;: &amp;#039;query&amp;#039;,&lt;br /&gt;
			&amp;#039;list&amp;#039;: [ &amp;#039;backlinks&amp;#039;, &amp;#039;imageusage&amp;#039; ],&lt;br /&gt;
			&amp;#039;bltitle&amp;#039;: mw.config.get(&amp;#039;wgPageName&amp;#039;),&lt;br /&gt;
			&amp;#039;iutitle&amp;#039;: mw.config.get(&amp;#039;wgPageName&amp;#039;),&lt;br /&gt;
			&amp;#039;bllimit&amp;#039;: &amp;#039;max&amp;#039;, // 500 is max for normal users, 5000 for bots and sysops&lt;br /&gt;
			&amp;#039;iulimit&amp;#039;: &amp;#039;max&amp;#039;, // 500 is max for normal users, 5000 for bots and sysops&lt;br /&gt;
			&amp;#039;blnamespace&amp;#039;: Twinkle.getPref(&amp;#039;unlinkNamespaces&amp;#039;),&lt;br /&gt;
			&amp;#039;iunamespace&amp;#039;: Twinkle.getPref(&amp;#039;unlinkNamespaces&amp;#039;),&lt;br /&gt;
			&amp;#039;rawcontinue&amp;#039;: true&lt;br /&gt;
		};&lt;br /&gt;
	} else {&lt;br /&gt;
		query = {&lt;br /&gt;
			&amp;#039;action&amp;#039;: &amp;#039;query&amp;#039;,&lt;br /&gt;
			&amp;#039;list&amp;#039;: &amp;#039;backlinks&amp;#039;,&lt;br /&gt;
			&amp;#039;bltitle&amp;#039;: mw.config.get(&amp;#039;wgPageName&amp;#039;),&lt;br /&gt;
			&amp;#039;blfilterredir&amp;#039;: &amp;#039;nonredirects&amp;#039;,&lt;br /&gt;
			&amp;#039;bllimit&amp;#039;: &amp;#039;max&amp;#039;, // 500 is max for normal users, 5000 for bots and sysops&lt;br /&gt;
			&amp;#039;blnamespace&amp;#039;: Twinkle.getPref(&amp;#039;unlinkNamespaces&amp;#039;),&lt;br /&gt;
			&amp;#039;rawcontinue&amp;#039;: true&lt;br /&gt;
		};&lt;br /&gt;
	}&lt;br /&gt;
	var wikipedia_api = new Morebits.wiki.api(&amp;#039;Grabbing backlinks&amp;#039;, query, Twinkle.unlink.callbacks.display.backlinks);&lt;br /&gt;
	wikipedia_api.params = { form: form, Window: Window, image: mw.config.get(&amp;#039;wgNamespaceNumber&amp;#039;) === 6 };&lt;br /&gt;
	wikipedia_api.post();&lt;br /&gt;
&lt;br /&gt;
	var root = document.createElement(&amp;#039;div&amp;#039;);&lt;br /&gt;
	root.style.padding = &amp;#039;15px&amp;#039;;  // just so it doesn&amp;#039;t look broken&lt;br /&gt;
	Morebits.status.init(root);&lt;br /&gt;
	wikipedia_api.statelem.status(&amp;#039;loading...&amp;#039;);&lt;br /&gt;
	Window.setContent(root);&lt;br /&gt;
	Window.display();&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
Twinkle.unlink.callback.evaluate = function twinkleunlinkCallbackEvaluate(event) {&lt;br /&gt;
	var reason = event.target.reason.value;&lt;br /&gt;
	if (!reason) {&lt;br /&gt;
		alert(&amp;#039;You must specify a reason for unlinking.&amp;#039;);&lt;br /&gt;
		return;&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
	var backlinks = [], imageusage = [];&lt;br /&gt;
	if (event.target.backlinks) {&lt;br /&gt;
		backlinks = Twinkle.unlink.getChecked2(event.target.backlinks);&lt;br /&gt;
	}&lt;br /&gt;
	if (event.target.imageusage) {&lt;br /&gt;
		imageusage = Twinkle.unlink.getChecked2(event.target.imageusage);&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
	Morebits.simpleWindow.setButtonsEnabled(false);&lt;br /&gt;
	Morebits.status.init(event.target);&lt;br /&gt;
&lt;br /&gt;
	var pages = Morebits.array.uniq(backlinks.concat(imageusage));&lt;br /&gt;
&lt;br /&gt;
	var unlinker = new Morebits.batchOperation(&amp;#039;Unlinking backlinks&amp;#039; + (imageusage ? &amp;#039; and instances of file usage&amp;#039; : &amp;#039;&amp;#039;));&lt;br /&gt;
	unlinker.setOption(&amp;#039;preserveIndividualStatusLines&amp;#039;, true);&lt;br /&gt;
	unlinker.setPageList(pages);&lt;br /&gt;
	var params = { reason: reason, unlinker: unlinker };&lt;br /&gt;
	unlinker.run(function(pageName) {&lt;br /&gt;
		var wikipedia_page = new Morebits.wiki.page(pageName, &amp;#039;Unlinking in article &amp;quot;&amp;#039; + pageName + &amp;#039;&amp;quot;&amp;#039;);&lt;br /&gt;
		wikipedia_page.setBotEdit(true);  // unlink considered a floody operation&lt;br /&gt;
		var innerParams = $.extend({}, params);&lt;br /&gt;
		innerParams.doBacklinks = backlinks &amp;amp;&amp;amp; backlinks.indexOf(pageName) !== -1;&lt;br /&gt;
		innerParams.doImageusage = imageusage &amp;amp;&amp;amp; imageusage.indexOf(pageName) !== -1;&lt;br /&gt;
		wikipedia_page.setCallbackParameters(innerParams);&lt;br /&gt;
		wikipedia_page.load(Twinkle.unlink.callbacks.unlinkBacklinks);&lt;br /&gt;
	});&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
Twinkle.unlink.callbacks = {&lt;br /&gt;
	display: {&lt;br /&gt;
		backlinks: function twinkleunlinkCallbackDisplayBacklinks(apiobj) {&lt;br /&gt;
			var xmlDoc = apiobj.responseXML;&lt;br /&gt;
			var havecontent = false;&lt;br /&gt;
			var list, namespaces, i;&lt;br /&gt;
&lt;br /&gt;
			if (apiobj.params.image) {&lt;br /&gt;
				var imageusage = $(xmlDoc).find(&amp;#039;query imageusage iu&amp;#039;);&lt;br /&gt;
				list = [];&lt;br /&gt;
				for (i = 0; i &amp;lt; imageusage.length; ++i) {&lt;br /&gt;
					var usagetitle = imageusage[i].getAttribute(&amp;#039;title&amp;#039;);&lt;br /&gt;
					list.push({ label: usagetitle, value: usagetitle, checked: true });&lt;br /&gt;
				}&lt;br /&gt;
				if (!list.length) {&lt;br /&gt;
					apiobj.params.form.append({ type: &amp;#039;div&amp;#039;, label: &amp;#039;No instances of file usage found.&amp;#039; });&lt;br /&gt;
				} else {&lt;br /&gt;
					apiobj.params.form.append({ type: &amp;#039;header&amp;#039;, label: &amp;#039;File usage&amp;#039; });&lt;br /&gt;
					namespaces = [];&lt;br /&gt;
					$.each(Twinkle.getPref(&amp;#039;unlinkNamespaces&amp;#039;), function(k, v) {&lt;br /&gt;
						namespaces.push(v === &amp;#039;0&amp;#039; ? &amp;#039;(Article)&amp;#039; : mw.config.get(&amp;#039;wgFormattedNamespaces&amp;#039;)[v]);&lt;br /&gt;
					});&lt;br /&gt;
					apiobj.params.form.append({&lt;br /&gt;
						type: &amp;#039;div&amp;#039;,&lt;br /&gt;
						label: &amp;#039;Selected namespaces: &amp;#039; + namespaces.join(&amp;#039;, &amp;#039;),&lt;br /&gt;
						tooltip: &amp;#039;You can change this with your Twinkle preferences, at [[WP:TWPREFS]]&amp;#039;&lt;br /&gt;
					});&lt;br /&gt;
					if ($(xmlDoc).find(&amp;#039;query-continue&amp;#039;).length) {&lt;br /&gt;
						apiobj.params.form.append({&lt;br /&gt;
							type: &amp;#039;div&amp;#039;,&lt;br /&gt;
							label: &amp;#039;First &amp;#039; + list.length.toString() + &amp;#039; file usages shown.&amp;#039;&lt;br /&gt;
						});&lt;br /&gt;
					}&lt;br /&gt;
					apiobj.params.form.append({&lt;br /&gt;
						type: &amp;#039;button&amp;#039;,&lt;br /&gt;
						label: &amp;#039;Select All&amp;#039;,&lt;br /&gt;
						event: function(e) {&lt;br /&gt;
							$(Morebits.quickForm.getElements(e.target.form, &amp;#039;imageusage&amp;#039;)).prop(&amp;#039;checked&amp;#039;, true);&lt;br /&gt;
						}&lt;br /&gt;
					});&lt;br /&gt;
					apiobj.params.form.append({&lt;br /&gt;
						type: &amp;#039;button&amp;#039;,&lt;br /&gt;
						label: &amp;#039;Deselect All&amp;#039;,&lt;br /&gt;
						event: function(e) {&lt;br /&gt;
							$(Morebits.quickForm.getElements(e.target.form, &amp;#039;imageusage&amp;#039;)).prop(&amp;#039;checked&amp;#039;, false);&lt;br /&gt;
						}&lt;br /&gt;
					});&lt;br /&gt;
					apiobj.params.form.append({&lt;br /&gt;
						type: &amp;#039;checkbox&amp;#039;,&lt;br /&gt;
						name: &amp;#039;imageusage&amp;#039;,&lt;br /&gt;
						list: list&lt;br /&gt;
					});&lt;br /&gt;
					havecontent = true;&lt;br /&gt;
				}&lt;br /&gt;
			}&lt;br /&gt;
&lt;br /&gt;
			var backlinks = $(xmlDoc).find(&amp;#039;query backlinks bl&amp;#039;);&lt;br /&gt;
			if (backlinks.length &amp;gt; 0) {&lt;br /&gt;
				list = [];&lt;br /&gt;
				for (i = 0; i &amp;lt; backlinks.length; ++i) {&lt;br /&gt;
					var title = backlinks[i].getAttribute(&amp;#039;title&amp;#039;);&lt;br /&gt;
					list.push({ label: title, value: title, checked: true });&lt;br /&gt;
				}&lt;br /&gt;
				apiobj.params.form.append({ type: &amp;#039;header&amp;#039;, label: &amp;#039;Backlinks&amp;#039; });&lt;br /&gt;
				namespaces = [];&lt;br /&gt;
				$.each(Twinkle.getPref(&amp;#039;unlinkNamespaces&amp;#039;), function(k, v) {&lt;br /&gt;
					namespaces.push(v === &amp;#039;0&amp;#039; ? &amp;#039;(Article)&amp;#039; : mw.config.get(&amp;#039;wgFormattedNamespaces&amp;#039;)[v]);&lt;br /&gt;
				});&lt;br /&gt;
				apiobj.params.form.append({&lt;br /&gt;
					type: &amp;#039;div&amp;#039;,&lt;br /&gt;
					label: &amp;#039;Selected namespaces: &amp;#039; + namespaces.join(&amp;#039;, &amp;#039;),&lt;br /&gt;
					tooltip: &amp;#039;You can change this with your Twinkle preferences, at [[WP:TWPREFS]]&amp;#039;&lt;br /&gt;
				});&lt;br /&gt;
				if ($(xmlDoc).find(&amp;#039;query-continue&amp;#039;).length) {&lt;br /&gt;
					apiobj.params.form.append({&lt;br /&gt;
						type: &amp;#039;div&amp;#039;,&lt;br /&gt;
						label: &amp;#039;First &amp;#039; + list.length.toString() + &amp;#039; backlinks shown.&amp;#039;&lt;br /&gt;
					});&lt;br /&gt;
				}&lt;br /&gt;
				apiobj.params.form.append({&lt;br /&gt;
					type: &amp;#039;button&amp;#039;,&lt;br /&gt;
					label: &amp;#039;Select All&amp;#039;,&lt;br /&gt;
					event: function(e) {&lt;br /&gt;
						$(Morebits.quickForm.getElements(e.target.form, &amp;#039;backlinks&amp;#039;)).prop(&amp;#039;checked&amp;#039;, true);&lt;br /&gt;
					}&lt;br /&gt;
				});&lt;br /&gt;
				apiobj.params.form.append({&lt;br /&gt;
					type: &amp;#039;button&amp;#039;,&lt;br /&gt;
					label: &amp;#039;Deselect All&amp;#039;,&lt;br /&gt;
					event: function(e) {&lt;br /&gt;
						$(Morebits.quickForm.getElements(e.target.form, &amp;#039;backlinks&amp;#039;)).prop(&amp;#039;checked&amp;#039;, false);&lt;br /&gt;
					}&lt;br /&gt;
				});&lt;br /&gt;
				apiobj.params.form.append({&lt;br /&gt;
					type: &amp;#039;checkbox&amp;#039;,&lt;br /&gt;
					name: &amp;#039;backlinks&amp;#039;,&lt;br /&gt;
					list: list&lt;br /&gt;
				});&lt;br /&gt;
				havecontent = true;&lt;br /&gt;
			} else {&lt;br /&gt;
				apiobj.params.form.append({ type: &amp;#039;div&amp;#039;, label: &amp;#039;No backlinks found.&amp;#039; });&lt;br /&gt;
			}&lt;br /&gt;
&lt;br /&gt;
			if (havecontent) {&lt;br /&gt;
				apiobj.params.form.append({ type: &amp;#039;submit&amp;#039; });&lt;br /&gt;
			}&lt;br /&gt;
&lt;br /&gt;
			var result = apiobj.params.form.render();&lt;br /&gt;
			apiobj.params.Window.setContent(result);&lt;br /&gt;
&lt;br /&gt;
			Morebits.checkboxShiftClickSupport($(&amp;quot;input[name=&amp;#039;imageusage&amp;#039;]&amp;quot;, result));&lt;br /&gt;
			Morebits.checkboxShiftClickSupport($(&amp;quot;input[name=&amp;#039;backlinks&amp;#039;]&amp;quot;, result));&lt;br /&gt;
&lt;br /&gt;
		}&lt;br /&gt;
	},&lt;br /&gt;
	unlinkBacklinks: function twinkleunlinkCallbackUnlinkBacklinks(pageobj) {&lt;br /&gt;
		var oldtext = pageobj.getPageText();&lt;br /&gt;
		var params = pageobj.getCallbackParameters();&lt;br /&gt;
		var wikiPage = new Morebits.wikitext.page(oldtext);&lt;br /&gt;
&lt;br /&gt;
		var summaryText = &amp;#039;&amp;#039;, warningString = false;&lt;br /&gt;
		var text;&lt;br /&gt;
&lt;br /&gt;
		// remove image usages&lt;br /&gt;
		if (params.doImageusage) {&lt;br /&gt;
			wikiPage.commentOutImage(mw.config.get(&amp;#039;wgTitle&amp;#039;), &amp;#039;Commented out&amp;#039;);&lt;br /&gt;
			text = wikiPage.getText();&lt;br /&gt;
			// did we actually make any changes?&lt;br /&gt;
			if (text === oldtext) {&lt;br /&gt;
				warningString = &amp;#039;file usages&amp;#039;;&lt;br /&gt;
			} else {&lt;br /&gt;
				summaryText = &amp;#039;Commenting out use(s) of file&amp;#039;;&lt;br /&gt;
				oldtext = text;&lt;br /&gt;
			}&lt;br /&gt;
		}&lt;br /&gt;
&lt;br /&gt;
		// remove backlinks&lt;br /&gt;
		if (params.doBacklinks) {&lt;br /&gt;
			wikiPage.removeLink(Morebits.pageNameNorm);&lt;br /&gt;
			text = wikiPage.getText();&lt;br /&gt;
			// did we actually make any changes?&lt;br /&gt;
			if (text === oldtext) {&lt;br /&gt;
				warningString = warningString ? &amp;#039;backlinks or file usages&amp;#039; : &amp;#039;backlinks&amp;#039;;&lt;br /&gt;
			} else {&lt;br /&gt;
				summaryText = (summaryText ? summaryText + &amp;#039; / &amp;#039; : &amp;#039;&amp;#039;) + &amp;#039;Removing link(s) to&amp;#039;;&lt;br /&gt;
				oldtext = text;&lt;br /&gt;
			}&lt;br /&gt;
		}&lt;br /&gt;
&lt;br /&gt;
		if (warningString) {&lt;br /&gt;
			// nothing to do!&lt;br /&gt;
			pageobj.getStatusElement().error(&amp;quot;Didn&amp;#039;t find any &amp;quot; + warningString + &amp;#039; on the page.&amp;#039;);&lt;br /&gt;
			params.unlinker.workerFailure(pageobj);&lt;br /&gt;
			return;&lt;br /&gt;
		}&lt;br /&gt;
&lt;br /&gt;
		pageobj.setPageText(text);&lt;br /&gt;
		pageobj.setEditSummary(summaryText + &amp;#039; &amp;quot;&amp;#039; + Morebits.pageNameNorm + &amp;#039;&amp;quot;: &amp;#039; + params.reason + &amp;#039;.&amp;#039; + Twinkle.getPref(&amp;#039;summaryAd&amp;#039;));&lt;br /&gt;
		pageobj.setCreateOption(&amp;#039;nocreate&amp;#039;);&lt;br /&gt;
		pageobj.save(params.unlinker.workerSuccess, params.unlinker.workerFailure);&lt;br /&gt;
	}&lt;br /&gt;
};&lt;br /&gt;
})(jQuery);&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
// &amp;lt;/nowiki&amp;gt;&lt;/div&gt;</summary>
		<author><name>en&gt;Amorymeltzer</name></author>
	</entry>
</feed>