Zum Inhalt springen

„MediaWiki:Gadget-toolserver-integration.js“ – Versionsunterschied

aus Wikipedia, der freien Enzyklopädie
Inhalt gelöscht Inhalt hinzugefügt
Direkteinbindung ohne Umweg über Benutzernamensraum
deepcat entfernt
 
Zeile 24: Zeile 24:
var tab_about = 'About this menu';
var tab_about = 'About this menu';
var tab_about_tooltip = null;
var tab_about_tooltip = null;
var abouttext = 'This message is displayed, because you activated the gadget Toolserver-Helferlein in the preferences. You can now configure this gadget. For example you may activate deepcat or moremenu.';
var abouttext = 'This message is displayed, because you activated the gadget Toolserver-Helferlein in the preferences. You can now configure this gadget. For example you may activate moremenu.';
var aboutask = 'Create configuration?';
var aboutask = 'Create configuration?';
var aboutask2 = 'Edit configuration?';
var aboutask2 = 'Edit configuration?';
Zeile 33: Zeile 33:
ts_cleandiff = false;
ts_cleandiff = false;
ts_wikidata = false;
ts_wikidata = false;
ts_deepcat = false;
ts_wikeddiff = false;
ts_wikeddiff = false;
ts_moremenu = false;
ts_moremenu = false;
Zeile 62: Zeile 61:
tab_about = 'Über dieses Menü';
tab_about = 'Über dieses Menü';
tab_about_tooltip = 'Toolserverhelferlein konfigurieren';
tab_about_tooltip = 'Toolserverhelferlein konfigurieren';
abouttext = 'Du siehst diese Meldung, weil Du das Toolserver-Helferlein aktiviert hast, von dem es nun eine neue Version gibt. Du kannst das Helferlein jetzt persönlich konfigurieren, um zusätzliche Funktionen zu aktivieren: Beispielsweise DeepCat oder zusätzliche Menüeinträge mit Informationen zu Benutzern oder Seiten.';
abouttext = 'Du siehst diese Meldung, weil Du das Toolserver-Helferlein aktiviert hast, von dem es nun eine neue Version gibt. Du kannst das Helferlein jetzt persönlich konfigurieren, um zusätzliche Funktionen zu aktivieren: Beispielsweise zusätzliche Menüeinträge mit Informationen zu Benutzern oder Seiten.';
aboutask = 'Jetzt Konfiguration erstellen?';
aboutask = 'Jetzt Konfiguration erstellen?';
aboutask2 = 'Vorhandene Konfiguration bearbeiten?';
aboutask2 = 'Vorhandene Konfiguration bearbeiten?';
Zeile 222: Zeile 221:
if ( ts_wikidata ) {
if ( ts_wikidata ) {
mw.loader.load( 'https://www.wikidata.org/w/index.php?title=User:Yair rand/WikidataInfo.js&action=raw&ctype=text/javascript' );
mw.loader.load( 'https://www.wikidata.org/w/index.php?title=User:Yair rand/WikidataInfo.js&action=raw&ctype=text/javascript' );
}
if ( ts_deepcat ) {
mw.loader.load( 'https://de.wikipedia.org/w/index.php?title=User:Christoph Fischer (WMDE)/Gadgets/DeepCat.js&action=raw&ctype=text/javascript' );
mw.loader.load( 'https://de.wikipedia.org/w/index.php?title=User:Christoph Fischer (WMDE)/Gadgets/DeepCat.css&action=raw&ctype=text/css' , 'text/css' );
}
}
if ( ts_wikeddiff ) {
if ( ts_wikeddiff ) {

Aktuelle Version vom 11. Februar 2025, 14:17 Uhr

/*
  Integration vieler externer Hilfsfunktionen vor allem des Toolservers in die Oberfläche der Wikipedia
  mittels zusätzlicher Karteireiter an geeigneten Stellen abhängig vom Kontext der gerade dargestellten
  Seite (Artikel, Bildseite, Benutzerseite, Kategorie...).
  
  Zur Konfiguration siehe [[Wikipedia:Helferlein/Toolserver-Integration/Konfiguration]]
*/
var tab_fist = 'FIST';
var tab_fist_tooltip = null;
var tab_commonshelper = 'Commonshelper';
var tab_commonshelper_tooltip = null;
var tab_navicheck = 'NaviLinkCheck';
var tab_navicheck_tooltip = null;
var tab_userpages = 'UserPages';
var tab_userpages_tooltip = null;
var tab_catscan = 'CatScan';
var tab_catscan_tooltip = null;
var tab_catgraph_article = 'vCat';
var tab_catgraph_article_tooltip = null;
var tab_catgraph_super = 'vCat-Super';
var tab_catgraph_super_tooltip = null;
var tab_catgraph_sub = 'vCat-Sub';
var tab_catgraph_sub_tooltip = null;
var tab_about = 'About this menu';
var tab_about_tooltip = null;
var abouttext = 'This message is displayed, because you activated the gadget Toolserver-Helferlein in the preferences. You can now configure this gadget. For example you may activate moremenu.';
var aboutask = 'Create configuration?';
var aboutask2 = 'Edit configuration?';

ts_guess_wiktionary_page = null;
ts_guess_wiktionary_page_lowercase = false;
ts_syntaxhighlight = false;
ts_cleandiff = false;
ts_wikidata = false;
ts_wikeddiff = false;
ts_moremenu = false;
ts_xtools = false;
ts_statistik = false;
ts_pagehiststat = false;
ts_history = false;
ts_about = true;

sprache = mw.config.get( 'wgUserLanguage' ).split( '-', 2 )[0];
if ( ',de,nds,als,bar,yi,ksh,pdc,pfl,pdt,vmf,sli,wym,gsw,lb,'.indexOf( ',' + sprache + ',' ) >= 0 ) {
	tab_fist = 'Bildsuche';
	tab_fist_tooltip = 'Suche nach Bildern für den Artikel';
	tab_autoreviewer = 'Fehlersuche';
	tab_autoreviewer_tooltip = 'Artikelverbesserungen finden';
	tab_commonshelper = 'Commonshelper';
	tab_commonshelper_tooltip = 'Bilder nach Commons verschieben';
	tab_navicheck = 'NaviLinkCheck';
	tab_navicheck_tooltip = 'Ist die Navi-Liste überall verlinkt?';
	tab_userpages = 'Globale Benutzerseiten';
	tab_userpages_tooltip = 'Letzte Änderung der Benutzer- und Diskussionsseiten in allen Wikis';
	tab_catgraph_article = 'Kategorienbaum';
	tab_catgraph_article_tooltip = 'Visuelle Darstellung des Kategorienbaumes';
	tab_catgraph_super = 'Überkategorienbaum';
	tab_catgraph_super_tooltip = 'Visuelle Darstellung der Überkategorien';
	tab_catgraph_sub = 'Unterkategorienbaum';
	tab_catgraph_sub_tooltip = 'Visuelle Darstellung der Unterkategorien';
	tab_about = 'Über dieses Menü';
	tab_about_tooltip = 'Toolserverhelferlein konfigurieren';
	abouttext = 'Du siehst diese Meldung, weil Du das Toolserver-Helferlein aktiviert hast, von dem es nun eine neue Version gibt. Du kannst das Helferlein jetzt persönlich konfigurieren, um zusätzliche Funktionen zu aktivieren: Beispielsweise zusätzliche Menüeinträge mit Informationen zu Benutzern oder Seiten.';
	aboutask = 'Jetzt Konfiguration erstellen?';
	aboutask2 = 'Vorhandene Konfiguration bearbeiten?';
}

$( function() {
	var wikiUrlencodeTitle = mw.util.wikiUrlencode( mw.config.get( 'wgTitle' ) );
	var wikiUrlencodePageName = mw.util.wikiUrlencode( mw.config.get( 'wgPageName' ) );
	var wikiUrlencodeUserName = mw.util.wikiUrlencode( mw.config.get( 'wgUserName' ) );
	var wikiUrlencodeRelevantUserName = mw.util.wikiUrlencode( mw.config.get( 'wgRelevantUserName' ) );

	switch ( mw.config.get( 'wgAction' ) ) {
		case 'view':
		case 'edit':
		case 'submit':
		case 'history':
		case 'purge':
		case 'rollback':
			break;
		default:
			return;
	}

	// versuche persönliche Einstellungen zu laden
	aboutUrl = 'javascript:if ( window.confirm("' + abouttext + '\\n\\n';
	jQuery.getScript( 'https://de.wikipedia.org/w/index.php?title=Special:MyPage/toolserverhelferleinconfig.js&action=raw&ctype=text/javascript' )
		.done( function( script, textStatus ) {
		    executePersonalPreferences();
	  	} )
	  	.fail( function( jqxhr, settings, exception ) {
			mw.util.addPortletLink( 
				'p-cactions',
				aboutUrl + aboutask + '") ) window.open("https://de.wikipedia.org/wiki/Wikipedia:Helferlein/Toolserver-Integration/Konfiguration", "_self")',
				tab_about,
				'ca-about',
				tab_about_tooltip
			);
		} ); 

	switch( mw.config.get( 'wgNamespaceNumber' ) ) {
		case -1:
			cnPgNm = mw.config.get( 'wgCanonicalSpecialPageName' );
			if ( cnPgNm === 'Contributions' ) {
			    mw.util.addPortletLink(
			    	'p-cactions',
			    	'https://meta.toolforge.org/userpages/' + wikiUrlencodeRelevantUserName, tab_userpages,
			    	'ca-userpages',
			    	tab_userpages_tooltip
			    );
			} else if ( wikiUrlencodeUserName === wikiUrlencodeRelevantUserName || cnPgNm === 'Watchlist' ) {
			    mw.util.addPortletLink(
			    	'p-cactions',
			    	'https://meta.toolforge.org/userpages/' + wikiUrlencodeUserName, tab_userpages,
			    	'ca-userpages',
			    	tab_userpages_tooltip
			    );
			}
			break;
		case 0:
			mw.util.addPortletLink(
				'p-cactions',
				'https://fist.toolforge.org/fist.php?doit=1&language=de&project=wikipedia&data=' + wikiUrlencodePageName + '&datatype=articles&params[catdepth]=0&params[random]=50&params[ll_max]=5&params[free_only]=1&params[commons_max]=5&params[commonsense]=on' + '&params[flickr_max]=5&params[flickr_new_name_from_article]=1&params[wts_max]=5&params[gimp_max]=5&params[esp_max]=5&params[esp_skip_flickr]=1&params[forarticles]=all&params[lessthan_images]=3&params[jpeg]=1&params[png]=1&params[gif]=1&params[svg]=1&params[min_width]=80&params[min_height]=80&sources[languagelinks]=1&sources[commons]=1&sources[flickr]=1&sources[wts]=1&sources[gimp]=1&sources[everystockphoto]=1',
				tab_fist,
				'ca-fist',
				tab_fist_tooltip
			);
			mw.util.addPortletLink(
				'p-cactions',
				'https://vcat.toolforge.org/render?wiki=dewiki&links=graph&ns=0&title=' + wikiUrlencodeTitle +'&format=' + ( ( ( !!document.createElementNS && !!document.createElementNS( 'http://www.w3.org/2000/svg', 'svg' ).createSVGRect) === true ) ? 'svg' : 'png' ),
				tab_catgraph_article,
				'ca-catgraph_article',
				tab_catgraph_article_tooltip
			);
			break;
		case 2:
		case 3:
			if ( mw.config.exists( 'wgRelevantUserName' ) ) {
				mw.util.addPortletLink(
					'p-cactions',
					'https://meta.toolforge.org/userpages/' + wikiUrlencodeRelevantUserName, tab_userpages,
					'ca-userpages',
					tab_userpages_tooltip
				);
			}
			break;
		case 6:
			mw.util.addPortletLink('p-cactions',
				'https://commonshelper.toolforge.org/?interface=' + mw.config.get( 'wgUserLanguage' ) + '&language=de&image=' + wikiUrlencodeTitle + '&project=wikipedia&username=' + wikiUrlencodeUserName + '&commonsense=1&doit=Get+text',
				tab_commonshelper,
				'ca-commonshelper',
				tab_commonshelper_tooltip
			);
			mw.util.addPortletLink(
				'p-cactions',
				'https://vcat.toolforge.org/render?wiki='+ ( mw.config.get( 'wgArticleId') === 0 ? 'commonswiki' : 'dewiki' ) +'&links=graph&ns=6&title=' + wikiUrlencodeTitle + '&format=' + ( ( ( !!document.createElementNS && !!document.createElementNS( 'http://www.w3.org/2000/svg', 'svg' ).createSVGRect ) === true ) ? 'svg' : 'png' ),
				tab_catgraph_article,
				'ca-catgraph_article',
				tab_catgraph_article_tooltip
			);
			break;
		case 10:
			if ( wikiUrlencodePageName.substr( 0, 25 ) === 'Vorlage:Navigationsleiste' ) {
				mw.util.addPortletLink(
					'p-cactions',
					'https://templatetransclusioncheck.toolforge.org/?lang=de&name=' + wikiUrlencodePageName,
					tab_navicheck,
					'ca-navicheck',
					tab_navicheck_tooltip
				);
			}
			break;
		case 14:
			var dapeteFormat = "png";
			if ( !!document.createElementNS && !!document.createElementNS( 'http://www.w3.org/2000/svg', 'svg' ).createSVGRect ) {
				dapeteFormat = "svg";
			}
			mw.util.addPortletLink(
				'p-cactions',
				'https://petscan.wmflabs.org/?language=de&project=wikipedia&interface_language=' + mw.config.get( 'wgUserLanguage' ) + '&categories=' + wikiUrlencodeTitle,
				tab_catscan,
				'ca-catscan',
				tab_catscan_tooltip
			);
			mw.util.addPortletLink(
				'p-cactions',
				'https://vcat.toolforge.org/render?wiki=dewiki&rel=category&links=wiki&category=' + wikiUrlencodeTitle + '&format=' + dapeteFormat,
				tab_catgraph_super,
				'ca-catgraph_super',
				tab_catgraph_super_tooltip
			);
			mw.util.addPortletLink(
				'p-cactions',
				'https://vcat.toolforge.org/render?wiki=dewiki&rel=subcategory&links=wiki&category=' + wikiUrlencodeTitle + '&format=' + dapeteFormat,
				tab_catgraph_sub,
				'ca-catgraph_sub',
				tab_catgraph_sub_tooltip
			);
			break;
		default:
			// nothing
	}

	function executePersonalPreferences() {
		if ( ts_about ) {
			mw.util.addPortletLink(
				'p-cactions',
				aboutUrl + aboutask2 + '") ) window.open("https://de.wikipedia.org/wiki/Wikipedia:Helferlein/Toolserver-Integration/Konfiguration", "_self")',
				tab_about,
				'ca-about',
				tab_about_tooltip
			);
		}
		if ( ts_syntaxhighlight ) {
			mw.loader.load( 'https://de.wikipedia.org/w/index.php?title=Benutzer:Schnark/js/syntaxhighlight.js&action=raw&ctype=text/javascript' );
		}
		if ( ts_cleandiff ) {
			mw.loader.load( 'https://de.wikipedia.org/w/index.php?title=Benutzer:TMg/cleanDiff.js&action=raw&ctype=text/javascript' );
		}
		if ( ts_wikidata ) {
			mw.loader.load( 'https://www.wikidata.org/w/index.php?title=User:Yair rand/WikidataInfo.js&action=raw&ctype=text/javascript' );
		}
		if ( ts_wikeddiff ) {
			mw.loader.load( 'https://en.wikipedia.org/w/index.php?title=User:Cacycle/wikEdDiff.js&action=raw&ctype=text/javascript' );
		}
		if ( ts_moremenu ) {
			mw.loader.load( 'https://meta.wikimedia.org/w/index.php?title=MediaWiki:MoreMenu.import.js&action=raw&ctype=text/javascript' );
		}
		if ( ts_xtools ) {
			mw.loader.load( 'https://www.mediawiki.org/w/index.php?title=XTools/ArticleInfo.js&action=raw&ctype=text/javascript' );
		} 
		if ( ts_statistik ) {
			mw.loader.load( 'https://de.wikipedia.org/w/index.php?title=Benutzer:Schnark/js/artikel-statistik.js&action=raw&ctype=text/javascript' ); // [[Benutzer:Schnark/js/artikel-statistik.js]]
		}
		if ( ts_history ) {
			mw.loader.load( 'https://de.wikipedia.org/w/index.php?title=Benutzer:APPER/WikiHistory.js&action=raw&ctype=text/javascript' );
		}
		if ( ts_pagehiststat ) {
			mw.util.addPortletLink(
				'p-cactions',
				'https://vs.aka-online.de/cgi-bin/wppagehiststat.pl?lang=de.wikipedia&page=' + wikiUrlencodePageName,
				'PageHistStat'
			);
		}
		if ( ts_guess_wiktionary_page !== null ) {
			apv = 'p-wikibase-otherprojects';
			if ( document.getElementById( apv ) === null ) {
				apv = 'p-tb';
			}
			seite = mw.config.get( 'wgPageName' );
			if ( mw.config.get( 'wgNamespaceNumber' ) !== 0 ) {
				seite = seite.substring( seite.indexOf(':' ) + 1 );
			}
			i = seite.indexOf('/');
			if ( i > 0 ) {
				seite = seite.substring( 0, i );
			}
			i = seite.indexOf( '_(' );
			if ( i > 0 ) {
				seite = seite.substring( 0, i );
			}
			i = seite.indexOf( ',' );
			if ( i > 0 ) {
				seite = seite.substring( 0, i );
			}
			wikts = ts_guess_wiktionary_page && ts_guess_wiktionary_page.split ? ts_guess_wiktionary_page.split( ',' ) : [];
			for ( i = 0; i < wikts.length; i++ ) {
				mw.util.addPortletLink(
					apv,
					'https://' + wikts[i] + '.wiktionary.org/wiki/' + seite,
					'Wiktionary (' + wikts[i] + ')'
				);
				if ( ts_guess_wiktionary_page_lowercase ) {
					mw.util.addPortletLink(
						apv,
						'https://' + wikts[i] + '.wiktionary.org/wiki/' + seite.toLowerCase(),
						'Wiktionary (' + wikts[i] + ', lc)'
					);
				}
			}
		}
	}
} );