MediaWiki:Common.js

Aus BlueX
Version vom 21. Mai 2026, 13:03 Uhr von Gerard (Diskussion | Beiträge) (Die Seite wurde neu angelegt: „Das folgende JavaScript wird für alle Benutzer geladen.: * Namensräume für die Seitenvorschau *: mw.config.set('wgContentNamespaces', [0, 100]); // // Sidebar‑Manipulation (Werkzeugkasten erweitern) // function ModifySidebar(action, section, name, link) { try { var target = 'p-' + section; if (section === 'languages') target = 'p-lang'; if (section === 'toolbox') target = 'p-tb'; if (section === 'navigatio…“)
(Unterschied) ← Nächstältere Version | Aktuelle Version (Unterschied) | Nächstjüngere Version → (Unterschied)
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
  • Edge: Strg+F5 drücken oder Strg drücken und gleichzeitig Aktualisieren anklicken
/* Das folgende JavaScript wird für alle Benutzer geladen. */
/** Namensräume für die Seitenvorschau **/
mw.config.set('wgContentNamespaces', [0, 100]);

//
// Sidebar‑Manipulation (Werkzeugkasten erweitern)
//
function ModifySidebar(action, section, name, link) {
    try {
        var target = 'p-' + section;
        if (section === 'languages') target = 'p-lang';
        if (section === 'toolbox') target = 'p-tb';
        if (section === 'navigation') target = 'p-navigation';

        var list = document.getElementById(target)
            ?.getElementsByTagName('div')[0]
            ?.getElementsByTagName('ul')[0];

        if (!list) return;

        if (action === 'add') {
            var aNode = document.createElement('a');
            var liNode = document.createElement('li');

            aNode.appendChild(document.createTextNode(name));
            aNode.setAttribute('href', link);
            liNode.appendChild(aNode);
            liNode.className = 'plainlinks';
            list.appendChild(liNode);
        }

        if (action === 'remove') {
            var items = list.getElementsByTagName('li');
            for (var i = 0; i < items.length; i++) {
                var a = items[i].getElementsByTagName('a')[0];
                if (a && (a.innerHTML === name || a.href === link)) {
                    list.removeChild(items[i]);
                }
            }
        }
    } catch (e) {
        return;
    }
}

function CustomizeModificationsOfSidebar() {
    // Toolbox‑Einträge für BlueX
    ModifySidebar('add', 'toolbox', 'Textbausteine', '/Wiki_BlueX/index.php/Kategorie:Textbausteine');
    ModifySidebar('add', 'toolbox', 'Letzte Änderungen', '/Wiki_BlueX/index.php/Spezial:Letzte_Änderungen');
    ModifySidebar('add', 'toolbox', 'Alle Seiten', '/Wiki_BlueX/index.php/Spezial:Alle_Seiten');
    ModifySidebar('add', 'toolbox', 'Zufällige Seite', '/Wiki_BlueX/index.php/Spezial:Zufällige_Seite');
}

jQuery(CustomizeModificationsOfSidebar);


//
// Icons für Bearbeiten / Quelltext bearbeiten (Vector‑2022)
//
mw.hook('wikipage.content').add(function($content) {

    $content.find('.mw-editsection a').each(function() {
        var $a = $(this);
        var text = $a.text().trim();

        // Text ausblenden
        $a.css({
            'font-size': '0',
            'display': 'inline-block',
            'width': '22px',
            'height': '22px',
            'background-size': 'contain',
            'background-repeat': 'no-repeat',
            'background-position': 'center',
            'vertical-align': 'middle',
            'margin-left': '4px'
        });

        // Normales Bearbeiten
        if (text === 'Bearbeiten') {
            $a.css('background-image', 'url("/Wiki_BlueX/images/e/e6/EditIcon.png")');
        }

        // Quelltext bearbeiten
        if (text === 'Quelltext bearbeiten') {
            $a.css('background-image', 'url("/Wiki_BlueX/images/f/f6/QEditIcon.png")');
        }
    });

    // Klammern entfernen
    $content.find('.mw-editsection').css('font-size', '0');
});