<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://mondocat.tv/wiki/index.php?action=history&amp;feed=atom&amp;title=MediaWiki%3ACommon.js</id>
	<title>MediaWiki:Common.js - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://mondocat.tv/wiki/index.php?action=history&amp;feed=atom&amp;title=MediaWiki%3ACommon.js"/>
	<link rel="alternate" type="text/html" href="https://mondocat.tv/wiki/index.php?title=MediaWiki:Common.js&amp;action=history"/>
	<updated>2026-11-09T09:20:09Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.41.1</generator>
	<entry>
		<id>https://mondocat.tv/wiki/index.php?title=MediaWiki:Common.js&amp;diff=3344&amp;oldid=prev</id>
		<title>MondoCat at 18:11, 9 September 2024</title>
		<link rel="alternate" type="text/html" href="https://mondocat.tv/wiki/index.php?title=MediaWiki:Common.js&amp;diff=3344&amp;oldid=prev"/>
		<updated>2024-09-09T18:11:42Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;a href=&quot;https://mondocat.tv/wiki/index.php?title=MediaWiki:Common.js&amp;amp;diff=3344&amp;amp;oldid=3343&quot;&gt;Show changes&lt;/a&gt;</summary>
		<author><name>MondoCat</name></author>
	</entry>
	<entry>
		<id>https://mondocat.tv/wiki/index.php?title=MediaWiki:Common.js&amp;diff=3343&amp;oldid=prev</id>
		<title>MondoCat: Created page with &quot;/* Any JavaScript here will be loaded for all users on every page load. */ $( 	(function () { 		mw.loader.using([&quot;oojs-ui-core&quot;, &quot;oojs-ui-windows&quot;]).done(() =&gt; { 			var windowManager = new OO.ui.WindowManager(); 			$(document.body).append(windowManager.$element);  			function showArticle(element) { 				var { articleTitle, articleContent } = element.dataset;  				function ArticleDialog(config) { 					ArticleDialog.super.call(this, config); 					this.config = config || {};...&quot;</title>
		<link rel="alternate" type="text/html" href="https://mondocat.tv/wiki/index.php?title=MediaWiki:Common.js&amp;diff=3343&amp;oldid=prev"/>
		<updated>2024-09-09T17:48:00Z</updated>

		<summary type="html">&lt;p&gt;Created page with &amp;quot;&lt;span dir=&quot;auto&quot;&gt;&lt;span class=&quot;autocomment&quot;&gt;Any JavaScript here will be loaded for all users on every page load.: &lt;/span&gt; $( 	(function () { 		mw.loader.using([&amp;quot;oojs-ui-core&amp;quot;, &amp;quot;oojs-ui-windows&amp;quot;]).done(() =&amp;gt; { 			var windowManager = new OO.ui.WindowManager(); 			$(document.body).append(windowManager.$element);  			function showArticle(element) { 				var { articleTitle, articleContent } = element.dataset;  				function ArticleDialog(config) { 					ArticleDialog.super.call(this, config); 					this.config = config || {};...&amp;quot;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;/* Any JavaScript here will be loaded for all users on every page load. */&lt;br /&gt;
$(&lt;br /&gt;
	(function () {&lt;br /&gt;
		mw.loader.using([&amp;quot;oojs-ui-core&amp;quot;, &amp;quot;oojs-ui-windows&amp;quot;]).done(() =&amp;gt; {&lt;br /&gt;
			var windowManager = new OO.ui.WindowManager();&lt;br /&gt;
			$(document.body).append(windowManager.$element);&lt;br /&gt;
&lt;br /&gt;
			function showArticle(element) {&lt;br /&gt;
				var { articleTitle, articleContent } = element.dataset;&lt;br /&gt;
&lt;br /&gt;
				function ArticleDialog(config) {&lt;br /&gt;
					ArticleDialog.super.call(this, config);&lt;br /&gt;
					this.config = config || {};&lt;br /&gt;
				}&lt;br /&gt;
&lt;br /&gt;
				OO.inheritClass(ArticleDialog, OO.ui.ProcessDialog);&lt;br /&gt;
&lt;br /&gt;
				ArticleDialog.static.name = &amp;quot;ArticleDialog&amp;quot;;&lt;br /&gt;
				ArticleDialog.static.title = articleTitle;&lt;br /&gt;
				ArticleDialog.static.size = &amp;quot;large&amp;quot;;&lt;br /&gt;
				ArticleDialog.static.actions = [&lt;br /&gt;
					{&lt;br /&gt;
						action: &amp;quot;close&amp;quot;,&lt;br /&gt;
						flags: &amp;quot;safe&amp;quot;,&lt;br /&gt;
						icon: &amp;quot;close&amp;quot;,&lt;br /&gt;
						label: &amp;quot;Close&amp;quot;&lt;br /&gt;
					}&lt;br /&gt;
				];&lt;br /&gt;
&lt;br /&gt;
				ArticleDialog.prototype.initialize = function () {&lt;br /&gt;
					ArticleDialog.super.prototype.initialize.apply(this, arguments);&lt;br /&gt;
					this.content = new OO.ui.PanelLayout({&lt;br /&gt;
						$content: atob(articleContent),&lt;br /&gt;
						expanded: false,&lt;br /&gt;
						padded: true,&lt;br /&gt;
						scrollable: true&lt;br /&gt;
					});&lt;br /&gt;
&lt;br /&gt;
					this.$body.append(this.content.$element);&lt;br /&gt;
				};&lt;br /&gt;
&lt;br /&gt;
				ArticleDialog.prototype.getActionProcess = function (action) {&lt;br /&gt;
					if (action === &amp;quot;close&amp;quot;) {&lt;br /&gt;
						return new OO.ui.Process(function () {&lt;br /&gt;
							this.close({ action: &amp;quot;close&amp;quot; });&lt;br /&gt;
						}, this);&lt;br /&gt;
					}&lt;br /&gt;
					return ArticleDialog.super.prototype.getActionProcess.call(&lt;br /&gt;
						this,&lt;br /&gt;
						action&lt;br /&gt;
					);&lt;br /&gt;
				};&lt;br /&gt;
&lt;br /&gt;
				var dialog = new ArticleDialog();&lt;br /&gt;
&lt;br /&gt;
				windowManager.addWindows([dialog]);&lt;br /&gt;
				windowManager.openWindow(dialog);&lt;br /&gt;
			}&lt;br /&gt;
&lt;br /&gt;
			const infopushes = document.querySelectorAll(&amp;quot;.tpl-infopush&amp;quot;);&lt;br /&gt;
			console.log(&amp;quot;Template:MainPageInfopush&amp;quot;, infopushes);&lt;br /&gt;
&lt;br /&gt;
			for (const infopush of infopushes) {&lt;br /&gt;
				try {&lt;br /&gt;
					const content = infopush.querySelector(&amp;quot;.tpl-infopush-content&amp;quot;);&lt;br /&gt;
&lt;br /&gt;
					const items = content.querySelectorAll(&amp;quot;.tpl-infopush-item&amp;quot;);&lt;br /&gt;
					const total = items.length;&lt;br /&gt;
&lt;br /&gt;
					console.log(&amp;quot;Template:MainPageInfopush&amp;quot;, infopush, items);&lt;br /&gt;
&lt;br /&gt;
					for (const item of items) {&lt;br /&gt;
						const { articleId } = item.dataset;&lt;br /&gt;
						if (!articleId) continue;&lt;br /&gt;
&lt;br /&gt;
						item.style.cursor = &amp;quot;pointer&amp;quot;;&lt;br /&gt;
						item.addEventListener(&amp;quot;click&amp;quot;, () =&amp;gt; showArticle(item));&lt;br /&gt;
					}&lt;br /&gt;
&lt;br /&gt;
					const navigation = infopush.querySelector(&amp;quot;.tpl-infopush-navigation&amp;quot;);&lt;br /&gt;
&lt;br /&gt;
					let currentOffset = 0;&lt;br /&gt;
					function showSlide(index) {&lt;br /&gt;
						currentOffset = (index + total) % total;&lt;br /&gt;
						content.style.transform = `translateX(-${currentOffset * 100}%)`;&lt;br /&gt;
					}&lt;br /&gt;
&lt;br /&gt;
					const autoAdvanceEvery = 5000;&lt;br /&gt;
&lt;br /&gt;
					let autoAdvanceInterval;&lt;br /&gt;
					function resetAutoAdvance() {&lt;br /&gt;
						if (autoAdvanceInterval) clearInterval(autoAdvanceInterval);&lt;br /&gt;
						autoAdvanceInterval = setInterval(function () {&lt;br /&gt;
							showSlide(currentOffset + 1);&lt;br /&gt;
						}, autoAdvanceEvery);&lt;br /&gt;
					}&lt;br /&gt;
&lt;br /&gt;
					navigation&lt;br /&gt;
						.querySelector(&amp;quot;.tpl-infopush-navigation-previous&amp;quot;)&lt;br /&gt;
						.addEventListener(&amp;quot;click&amp;quot;, () =&amp;gt; {&lt;br /&gt;
							showSlide(currentOffset - 1);&lt;br /&gt;
							resetAutoAdvance();&lt;br /&gt;
						});&lt;br /&gt;
&lt;br /&gt;
					navigation&lt;br /&gt;
						.querySelector(&amp;quot;.tpl-infopush-navigation-next&amp;quot;)&lt;br /&gt;
						.addEventListener(&amp;quot;click&amp;quot;, () =&amp;gt; {&lt;br /&gt;
							showSlide(currentOffset + 1);&lt;br /&gt;
							resetAutoAdvance();&lt;br /&gt;
						});&lt;br /&gt;
&lt;br /&gt;
					resetAutoAdvance();&lt;br /&gt;
					showSlide(0);&lt;br /&gt;
				} catch (reason) {&lt;br /&gt;
					console.warn(&lt;br /&gt;
						&amp;quot;Template:MainPageInfopush&amp;quot;,&lt;br /&gt;
						&amp;quot;Couldn&amp;#039;t initialize infopush.&amp;quot;,&lt;br /&gt;
						reason&lt;br /&gt;
					);&lt;br /&gt;
				}&lt;br /&gt;
			}&lt;br /&gt;
		});&lt;br /&gt;
	})()&lt;br /&gt;
);&lt;/div&gt;</summary>
		<author><name>MondoCat</name></author>
	</entry>
</feed>