<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://ffxiv.consolegameswiki.com/mediawiki/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Enbi</id>
	<title>Final Fantasy XIV Online Wiki - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="https://ffxiv.consolegameswiki.com/mediawiki/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Enbi"/>
	<link rel="alternate" type="text/html" href="https://ffxiv.consolegameswiki.com/wiki/Special:Contributions/Enbi"/>
	<updated>2026-09-02T04:05:54Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.44.2</generator>
	<entry>
		<id>https://ffxiv.consolegameswiki.com/mediawiki/index.php?title=User:Enbi/common.js&amp;diff=1528130</id>
		<title>User:Enbi/common.js</title>
		<link rel="alternate" type="text/html" href="https://ffxiv.consolegameswiki.com/mediawiki/index.php?title=User:Enbi/common.js&amp;diff=1528130"/>
		<updated>2026-08-31T23:06:39Z</updated>

		<summary type="html">&lt;p&gt;Enbi: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;// By [[wikipedia:User:BrandonXLF]]&lt;br /&gt;
&lt;br /&gt;
$(function() {&lt;br /&gt;
	if (mw.config.get(&#039;wgAction&#039;) != &#039;history&#039;) return;&lt;br /&gt;
&lt;br /&gt;
	window.restorerSummary = window.restorerSummary ||&lt;br /&gt;
		&#039;Restored revision $ID by [[Special:Contributions/$USER|$USER]] ([[en:w:User:BrandonXLF/Restorer|Restorer]])&#039;;&lt;br /&gt;
&lt;br /&gt;
	function restore(revid) {&lt;br /&gt;
		var api = new mw.Api();&lt;br /&gt;
&lt;br /&gt;
		return api.get({&lt;br /&gt;
			action: &#039;query&#039;,&lt;br /&gt;
			revids: revid,&lt;br /&gt;
			prop: &#039;revisions&#039;,&lt;br /&gt;
			rvprop: &#039;user&#039;,&lt;br /&gt;
			format: &#039;json&#039;,&lt;br /&gt;
			formatversion: &#039;2&#039;&lt;br /&gt;
		}).then(function(res) {&lt;br /&gt;
			var user = res.query.pages[0].revisions[0].user;&lt;br /&gt;
&lt;br /&gt;
			return api.postWithEditToken({&lt;br /&gt;
				action: &#039;edit&#039;,&lt;br /&gt;
				pageid: mw.config.get(&#039;wgArticleId&#039;),&lt;br /&gt;
				undo: mw.config.get(&#039;wgCurRevisionId&#039;),&lt;br /&gt;
				undoafter: revid,&lt;br /&gt;
				summary: window.restorerSummary.replace(/\$ID/g, revid).replace(/\$USER/g, user)&lt;br /&gt;
			});&lt;br /&gt;
		}).then(&lt;br /&gt;
			function() {&lt;br /&gt;
				mw.notify(&#039;Restored revision successfully.&#039;);&lt;br /&gt;
				location.reload();&lt;br /&gt;
			},&lt;br /&gt;
			function(_, data) {&lt;br /&gt;
				mw.notify(api.getErrorMessage(data), {type: &#039;error&#039;});&lt;br /&gt;
			}&lt;br /&gt;
		);&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
	function addLink(item) {&lt;br /&gt;
		var revid = item.getAttribute(&#039;data-mw-revid&#039;);&lt;br /&gt;
		if (revid == mw.config.get(&#039;wgCurRevisionId&#039;)) return;&lt;br /&gt;
&lt;br /&gt;
		var links = item.querySelector(&#039;.comment + .mw-changeslist-links&#039;);&lt;br /&gt;
		if (!links) return;&lt;br /&gt;
&lt;br /&gt;
		var parent = document.createElement(&#039;span&#039;),&lt;br /&gt;
			el = document.createElement(&#039;a&#039;);&lt;br /&gt;
&lt;br /&gt;
		el.addEventListener(&#039;click&#039;, function() {&lt;br /&gt;
			el.className = &#039;restorer-loading&#039;;&lt;br /&gt;
&lt;br /&gt;
			restore(revid).always(function() {&lt;br /&gt;
				el.className = &#039;&#039;;&lt;br /&gt;
			});&lt;br /&gt;
		});&lt;br /&gt;
&lt;br /&gt;
		el.textContent = &#039;restore&#039;;&lt;br /&gt;
		parent.appendChild(el);&lt;br /&gt;
		links.appendChild(parent);&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
	var parents = document.querySelectorAll(&#039;li[data-mw-revid]&#039;);&lt;br /&gt;
&lt;br /&gt;
	for (var i = 0; i &amp;lt; parents.length; i++) {&lt;br /&gt;
		addLink(parents[i]);&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
	mw.loader.addStyleTag(&lt;br /&gt;
		&#039;@keyframes restorer-loading {&#039; +&lt;br /&gt;
		&#039;0%, 100% {content: &amp;quot; ⡁&amp;quot;} 16% {content: &amp;quot; ⡈&amp;quot;} 33% {content: &amp;quot; ⠔&amp;quot;} 50% {content: &amp;quot; ⠒&amp;quot;} 66% {content: &amp;quot; ⠢&amp;quot;} 83% {content: &amp;quot; ⢁&amp;quot;}}&#039; +&lt;br /&gt;
		&#039;.restorer-loading::after {white-space: pre; content: &amp;quot;&amp;quot;; animation: restorer-loading 0.5s infinite}&#039;&lt;br /&gt;
	);&lt;br /&gt;
});&lt;/div&gt;</summary>
		<author><name>Enbi</name></author>
	</entry>
	<entry>
		<id>https://ffxiv.consolegameswiki.com/mediawiki/index.php?title=User:Enbi/common.js&amp;diff=1528127</id>
		<title>User:Enbi/common.js</title>
		<link rel="alternate" type="text/html" href="https://ffxiv.consolegameswiki.com/mediawiki/index.php?title=User:Enbi/common.js&amp;diff=1528127"/>
		<updated>2026-08-31T23:05:16Z</updated>

		<summary type="html">&lt;p&gt;Enbi: for some antivandalism work&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;importScript(&#039;wikipedia:User:BrandonXLF/Restorer.js&#039;);&lt;/div&gt;</summary>
		<author><name>Enbi</name></author>
	</entry>
	<entry>
		<id>https://ffxiv.consolegameswiki.com/mediawiki/index.php?title=User:Enbi/common.js&amp;diff=1528114</id>
		<title>User:Enbi/common.js</title>
		<link rel="alternate" type="text/html" href="https://ffxiv.consolegameswiki.com/mediawiki/index.php?title=User:Enbi/common.js&amp;diff=1528114"/>
		<updated>2026-08-31T23:03:16Z</updated>

		<summary type="html">&lt;p&gt;Enbi: for some antivandalism work&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;mw.loader.load(&#039;en.wikipedia.org/w/index.php?title=User:BrandonXLF/Restorer.js&amp;amp;action=raw&amp;amp;ctype=text/javascript&#039;);&lt;/div&gt;</summary>
		<author><name>Enbi</name></author>
	</entry>
</feed>