Benutzer:Hoo man/insane.js

aus Wikipedia, der freien Enzyklopädie
Zur Navigation springen Zur Suche springen

Hinweis: Leere nach dem Veröffentlichen den Browser-Cache, um die Änderungen sehen zu können.

  • Firefox/Safari: Umschalttaste drücken und gleichzeitig Aktualisieren anklicken oder entweder Strg+F5 oder Strg+R (⌘+R auf dem Mac) drücken
  • Google Chrome: Umschalttaste+Strg+R (⌘+Umschalttaste+R auf dem Mac) drücken
  • Internet Explorer/Edge: Strg+F5 drücken oder Strg drücken und gleichzeitig Aktualisieren anklicken
  • Opera: Strg+F5
/*
* [[m:user:Hoo man]]; Version 1.5.3; 2013-07-11;
* MediaWiki for insane people! (Vector and Monobook only)
* Can be activated/ disabled in the Toolbox (lower left)
* DO NOT COPY AND PASTE, instead use:
 
//MediaWiki for insane people! (Vector and Monobook only), can be activated in the Toolbox (lower left) after installation
//by [[m:user:Hoo man]]
mw.loader.load('//de.wikipedia.org/w/index.php?title=Benutzer:Hoo_man/insane.js&action=raw&ctype=text/javascript');
  
*/
mw.loader.using(['site', 'mediawiki.util', 'mediawiki.cookie'], function() {
	"use strict";
	var cookieName = 'wp_insane';
	var linkMethod = 'p-tb';
	mw.messages.set({ 'insane-go-insane' : 'Go insane!', 'insane-get-sane' : 'Get sane :(' });
	var goInsane = function() {
		mw.cookie.set( cookieName, 'active', { path : '/', expires : 31} );
		$('#goInsane a').text(mw.message('insane-get-sane').escaped());
		$('#goInsane').unbind();
		$('#goInsane').on('click', goSane);
		startTheInsanity();
	};
	var goSane = function() {
		mw.cookie.set( cookieName, null, { path : '/', expires : 31} );
		window.location.reload();
	};
	var getColor = function() {
		var colors = ['red', 'blue', 'yellow', 'white', 'black', 'pink', 'purple', 'khaki', 'green'];
		return colors[ Math.floor(Math.random() * colors.length) ];
	};
	var fly = function( bird, duration ) {
		$( bird ).css( {
			left: ($(window).width() - 200) + 'px'
		} )
		.animate( {
			left: '0px'
		}, duration);
	};
	var startTheInsanity = function() {
		mw.util.addCSS(
			"body { background-image: url('//upload.wikimedia.org/wikipedia/commons/2/25/Animated_rainbow_rule_fast.gif'); background-repeat: repeat; } " +
			"#mw-head {	text-decoration: blink; background-image: url('//upload.wikimedia.org/wikipedia/commons/thumb/d/d9/The_Belousov-Zhabotinsky_Reaction.gif/100px-The_Belousov-Zhabotinsky_Reaction.gif'); }"
		);
		if(skin === 'monobook') {
			$('.generated-sidebar, .generated-sidebar div, #p-tb .pBody, #searchBody, #footer')
				.css('background-image', 'url("//upload.wikimedia.org/wikipedia/commons/thumb/d/d9/The_Belousov-Zhabotinsky_Reaction.gif/100px-The_Belousov-Zhabotinsky_Reaction.gif")' );
			setInterval(function() {
				$('.pBody li a').css('background-color', getColor );
			}, 300);
		}
		setInterval(function() {
			var $content = document.getElementById('content');
			setTimeout(function() {
				$content.style.backgroundColor = getColor();
			}, Math.floor(Math.random() * 300));
			$('.vectorTabs > ul > li').css('background-color', getColor );
			$('#mw-panel a').css('background-color', getColor );
			$('#searchInput').css('background-color', getColor );
			$('input[type=submit]').css('background-color', getColor );
			// #firstHeading
			setTimeout(function() {
				$('#firstHeading').css('background-color', getColor );
			}, Math.floor(Math.random() * 300));
			setTimeout(function() {
				$('#firstHeading').css('color', getColor );
			}, Math.floor(Math.random() * 300));
		}, 300);
		setInterval(function() {
			var $content = document.getElementById('content');
			setTimeout(function() {
				$content.style.color = getColor();
			}, Math.floor(Math.random() * 1700));
			setTimeout(function() {
				$('a').css('color', getColor);
			}, Math.floor(Math.random() * 1700));
		}, 1700);
		$('.vectorTabs > ul > li').attr('style', 'background-image: none !important');
		// Birds!
		$( '<img id="rainbowBird0" src="//upload.wikimedia.org/wikipedia/commons/e/e3/Animalibr%C3%AD.gif" style="position: fixed; top: 5px; z-index: 99;" />' ).appendTo('body');
		$( '<img id="rainbowBird1" src="//upload.wikimedia.org/wikipedia/commons/e/e3/Animalibr%C3%AD.gif" style="position: relative; bottom: 192px; z-index: 99;" />' ).appendTo('body');
		fly( '#rainbowBird0', 4950 );
		fly( '#rainbowBird1', 6950 );
		setInterval(function() {
			fly( '#rainbowBird0', 4950 );
		}, 5000);
		setInterval(function() {
			fly( '#rainbowBird1', 6950 );
		}, 7000);
		// Bouncy logo
		$( '#p-logo a' ).css('background-image', 'url("//upload.wikimedia.org/wikipedia/commons/9/98/New-Bouncywikilogo.gif")' );
	};
	mw.util.addPortletLink(linkMethod, '#', '', 'goInsane');
	if( mw.cookie.get( cookieName ) === 'active' ) {
		//enabled
		$('#goInsane a').text( mw.message('insane-get-sane').escaped() );
		$('#goInsane').on('click', goSane);
		startTheInsanity();
	}else{
		$('#goInsane a').text( mw.message('insane-go-insane').escaped() );
		$('#goInsane').on('click', goInsane);
	}
});