Zum Inhalt springen

Benutzer:Dexxor/Page descriptions.js

aus Wikipedia, der freien Enzyklopädie
Dies ist die aktuelle Version dieser Seite, zuletzt bearbeitet am 29. April 2022 um 13:54 Uhr durch Dexxor (Diskussion | Beiträge) (Auf Stand vom 24. April zurückgesetzt).
(Unterschied) ← Nächstältere Version | Aktuelle Version (Unterschied) | Nächstjüngere Version → (Unterschied)

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
  • Edge: Strg+F5 drücken oder Strg drücken und gleichzeitig Aktualisieren anklicken
// Artikelbeschreibung aus Wikidata unter dem Seitentitel anzeigen.
// Kopie von [[en:MediaWiki:Gadget-Page descriptions.js]] (Autor: TheDJ, Lizenz: CC-BY-SA 3.0) mit leichten Änderungen.
if ( mw.config.get( 'wgNamespaceNumber' ) === 0 && mw.config.get( 'wgAction' ) === 'view' ) {
	mw.loader.using( 'mediawiki.api' ).then( function () {
		var wgQid = mw.config.get( 'wgWikibaseItemId' ),
			api = new mw.Api(),
			callPromise = api.get( {
				action: 'query',
				titles: mw.config.get( 'wgTitle' ),
				prop: 'description',
				formatversion: 2
			} );

		$.when( callPromise, $.ready ).then( function ( results ) {
			var pageDescription, $description,
				response = results[ 0 ];
			if (
				response.query &&
				response.query.pages &&
				response.query.pages[ 0 ].description
			) {
				pageDescription = response.query.pages[ 0 ].description;
				$description = $( '<span>' )
					.addClass( 'mw-page-description' )
					.text( pageDescription )
					.append( '. ' );
			} else {
				$description = $( '<span>' )
					.css( 'color', 'red' )
					.append( 'Keine Beschreibung. '	);
			}
			$description.append(
						'[',
						$( '<a>' )
							.attr( 'href', 'https://www.wikidata.org/wiki/Special:SetLabelDescriptionAliases/' + wgQid + '/' + 'de' )
							.text( 'Bearbeiten' ),
						'] '
					);
			if ( $description ) {
				$( '#contentSub' ).prepend( $description );
			}
		} );
	} );
}