MediaWiki:Gadget-Doppel-s-Schreibung.js

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
// Anwenderbeschreibung siehe [[MediaWiki:Gadget-Doppel-s-Schreibung]]

/* nur in bestimmten Namensräumen (Artikel-, Bild-, Kategorie- und Portalraum) */
if ( mw.config.get( 'wgNamespaceNumber' ) === 0
  || mw.config.get( 'wgNamespaceNumber' ) === 6
  || mw.config.get( 'wgNamespaceNumber' ) === 14
  || mw.config.get( 'wgNamespaceNumber' ) === 100
) {
	$( function() {
		function text_sz_to_ss(text) {
			// Alleinstehende "ß" werden nicht geändert.
			return text.replace(/([\wäöü])ß/gi, '$1ss').replace(/ß([\wäöü])/gi, 'ss$1');
		}

		function node_sz_to_ss(node) {
			if (node.nodeType === 3) { // Node.TEXT_NODE
				var text = text_sz_to_ss(node.data);
				if (text !== node.data) { // odd Gecko rendering error
					node.data = text;
				}
			} else if ( node.nodeType === 1		// Node.ELEMENT_NODE
				 && node.id !== 'editform'	// Nicht das Bearbeitenfeld
				 && node.className !== 'Zitat'	// keine Zitate
				) {
				for (var i = 0 ; i < node.childNodes.length ; i++) {
					node_sz_to_ss(node.childNodes[i]); // rekursives Ablaufen des DOM
				}
			}
		}

		document.title = text_sz_to_ss( document.title );
		node_sz_to_ss( document.getElementById( 'content' ) ); //with firstHeader, sitenotice and so on
	});
}