Benutzer:MisterSynergy/virtualInfobox.js

aus Wikipedia, der freien Enzyklopädie

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
let MisterSynergy_virtualInfobox = {
	execute : () => {
		if(mw.config.get('wgArticleId') === 0){
			console.log('MisterSynergy_virtualInfobox: found a deleted article');
			return;			// no deleted articles	
		}
		if(mw.config.get('wgNamespaceNumber') !== 0){
			console.log('MisterSynergy_virtualInfobox: wrong namespace');
			return;	// only in main namespace
		}
		if(mw.config.get('wgCategories').filter(category => category.startsWith('Ruderer (')).length === 0){
			console.log('MisterSynergy_virtualInfobox: no category found');
			return;	// only for pages categorized in a subcat of [[:Kategorie:Ruderer]]	
		}
		
		mw.loader.load( '//de.wikipedia.org/w/index.php?title=User:MisterSynergy/virtualInfobox.css&action=raw&ctype=text/css' , 'text/css' ); // [[User:MisterSynergy/virtualInfobox.css]]

		var formData = new FormData();
		formData.append('wikitext', '{{Benutzer:MisterSynergy/dummyInfobox}}');
		formData.append('body_only', true);
		
		$.ajax({
			url: '/api/rest_v1/transform/wikitext/to/html/' + mw.config.get('wgTitle'),
			type: 'POST',
			data: formData,
			contentType: false,
			processData: false,
			dataType: 'html'
		}).done(html => {
			$('DIV.mw-parser-output').before('<div id="mistersynergy-virtualinfobox-controls">Virtual infobox: <a id="mistersynergy-virtualinfobox-toggle" href="#" title="toggle visibility of the virtual infobox">toggle visibility</a></div>');
			//$('DIV.mw-parser-output').css('margin-right', '250px');
			$('DIV.mw-parser-output').prepend('<div id="mistersynergy-virtualinfobox" style="display:none;">' + html + '</div>');
		}).done(() => {
			$('#mistersynergy-virtualinfobox-toggle').click(() => {
				if($('#mistersynergy-virtualinfobox').css('display') === 'block'){
					$('#mistersynergy-virtualinfobox').css('display', 'none');
//					$('DIV.mw-parser-output').css('margin-right', '');
				}
				else {
					$('#mistersynergy-virtualinfobox').css('display', 'block');
//					$('DIV.mw-parser-output').css('margin-right', '250px');
				}
			});
		});
	}
};

$(MisterSynergy_virtualInfobox.execute);