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
mw.loader.using(['jquery'], function () { $(document).ready(function () { /*$('.smw-column-header').each(function () { // aktuellen HTML-Inhalt holen var html = $(this).html(); // "Fortsetzung" entfernen, Leerzeichen ggf. bereinigen var newHtml = html.replace(/Fortsetzung/g, '').trim(); // falls nach dem Entfernen gar kein Text übrig ist, komplette Header-Box ausblenden: if (newHtml === '') { $(this).hide(); } else { // ansonsten nur den Text überschreiben, sodass z. B. "B Fortsetzung" → "B" wird $(this).html(newHtml); } });*/ $(function () { $('<style>') .prop('type', 'text/css') .html( '.breadcrumb-item { font-size: 17px !important; }' + '.breadcrumb-nav { border-bottom: 2px solid #85bc20!important; margin-bottom: 20px !important; }' ) .appendTo('head'); }); }); }); // Namespace-Link für Unterseiten-Panel function updateSubpageHeader() { // Das Header-Element finden const header = document.getElementById('subpage-tree-pnl-head'); if (header) { // Aktuellen Namespace ermitteln const namespace = mw.config.get('wgCanonicalNamespace'); const namespaceName = namespace || 'Hauptseite'; // Link zur Namespace-Hauptseite erstellen let namespaceLink; if (namespace) { // Für Namespaces wie "Verein:" zur Hauptseite des Namespace namespaceLink = /${namespace}:Hauptseite; } else { // Für Hauptnamespace zur allgemeinen Hauptseite namespaceLink = '/Hauptseite'; } // Header mit klickbarem Link ersetzen header.innerHTML = <a href="/wiki${namespaceLink}" style="color: inherit; text-decoration: none;">${namespaceName}</a>; // Hover-Effekt hinzufügen const link = header.querySelector('a'); if (link) { link.addEventListener('mouseenter', function() { this.style.textDecoration = 'underline'; }); link.addEventListener('mouseleave', function() { this.style.textDecoration = 'none'; }); } } } // Nach dem Laden der Seite ausführen $(document).ready(function() { // Kurze Verzögerung, da der Unterseiten-Baum dynamisch geladen wird setTimeout(updateSubpageHeader, 100); }); // Auch nach AJAX-Updates ausführen $(document).ajaxComplete(function() { setTimeout(updateSubpageHeader, 100); }); // Entferne "Hauptseite/" aus Linktexten function cleanPageLinks() { // Alle Links finden, die "Hauptseite/" im Text haben const links = document.querySelectorAll('a[href*="Hauptseite/"]'); links.forEach(function(link) { // Nur den sichtbaren Text ändern, nicht den href if (link.textContent.includes('Hauptseite/')) { link.textContent = link.textContent.replace('Hauptseite/', ''); } }); } // JavaScript nach dem Laden der Seite ausführen $(document).ready(function() { cleanPageLinks(); }); // Auch nach AJAX-Updates ausführen (für dynamische Inhalte) $(document).ajaxComplete(function() { cleanPageLinks(); }); $(function(){ // In allen Category-Ausgaben: jede LI, die einen <a class="new"> enthält, entfernen $('.smw-columnlist-container a.new').each(function(){ $(this).closest('li').remove(); }); }); $(function(){ // 1. Rote Links raus (wie gehabt) $('.smw-columnlist-container a.new').each(function(){ $(this).closest('li').remove(); }); // 2. Jetzt jede Buchstaben-Überschrift entfernen, deren Liste leer ist $('.smw-column-header').each(function(){ var $header = $(this), $ul = $header.next('ul'); if ($ul.length && $ul.children('li').length === 0) { $ul.remove(); $header.remove(); } }); }); // attachments immer in neuem Tab öffnen (function () { // Hilfs-Funktion, die alle neuen Attachment-Links anpasst function updateAttachmentLinks() { // Alle Download-Links in der Datei-Liste $('.attachments-filelist a.oojsplus-data-gridWidget-url-button') .attr('target','_blank') .attr('rel','noopener noreferrer'); } // beim Seiten-Load einmal ausführen $(updateAttachmentLinks); // und mit MutationObserver auf nachträglich geladene Links achten var container = document.querySelector('.attachments-filelist'); if (container) { new MutationObserver(function (mutations) { updateAttachmentLinks(); }).observe(container, { childList: true, subtree: true }); } })(); /* Startseiten-Menü: ohne Expander, #subpage-tree-pnl ausblenden, kein Einrücken unten */ (function (mw, $) { 'use strict'; function isMainView() { return mw.config.get('wgIsMainPage') && mw.config.get('wgAction') === 'view'; } // NEUE Funktion: Prüft ob Benutzer angemeldet ist function isLoggedIn() { return !mw.user.isAnon(); } function hideSubpageTreePanel($scope) { // Nur ausführen wenn auf Hauptseite UND angemeldet if (!isMainView() || !isLoggedIn()) return; // global (nur auf Startseite, weil Funktion nur hier läuft) mw.util.addCSS('#subpage-tree-pnl{display:none!important;}'); // sofort im aktuellen/neu geladenen Bereich ($scope || $(document)).find('#subpage-tree-pnl').hide().attr('aria-hidden', 'true'); } function injectHomeMenu($root) { // Nur ausführen wenn auf Hauptseite UND angemeldet if (!isMainView() || !isLoggedIn()) return; if (document.getElementById('home-static-menu')) return; // Duplikate vermeiden var $container = ($root || $(document)).find('#sb-pri-cnt:visible').last(); if (!$container.length) return; const menuHtml = <div id="home-static-menu" class="home-static-menu"> <div class="enhanced-sidebar-cnt"> <div id="9a659-pnl" class="card w-100 bg-transp tree-component test"> <div id="9a659-head" class="card-header menu-title">Themen</div> <ul id="9a659-menu" class="mws-tree root w-100 bg-transp" role="tree" aria-labelledby="9a659-head" tabindex="0"> <li id="43568" class="mws-tree-item internal" role="treeitem"> <div><a id="43568-label" class="mws-tree-item-label" href="/wiki/Verein:Hauptseite">Verein</a></div> </li> <li id="12180" class="mws-tree-item internal" role="treeitem"> <div><a id="12180-label" class="mws-tree-item-label" href="/wiki/Arbeitsorganisation:Hauptseite">Arbeitsorganisation</a></div> </li> <li id="94668" class="mws-tree-item internal" role="treeitem"> <div><a id="94668-label" class="mws-tree-item-label" href="/wiki/Angebote:Hauptseite">Angebote</a></div> </li> <li id="16759" class="mws-tree-item internal" role="treeitem"> <div><a id="16759-label" class="mws-tree-item-label" href="/wiki/Gruppenarbeit:Hauptseite">Gruppenarbeit</a></div> </li> <li id="20ee3" class="mws-tree-item internal" role="treeitem"> <div><a id="20ee3-label" class="mws-tree-item-label" href="/wiki/Mitarbeit:Hauptseite">Mitarbeit</a></div> </li> <li id="d5272" class="mws-tree-item internal" role="treeitem"> <div><a id="d5272-label" class="mws-tree-item-label" href="/wiki/Kommunikation:Hauptseite">Kommunikation</a></div> </li> <li id="48945" class="mws-tree-item internal" role="treeitem"> <div><a id="48945-label" class="mws-tree-item-label" href="/wiki/QM:Hauptseite">QM</a></div> </li> <li id="27eea" class="mws-tree-item internal" role="treeitem"> <div><a id="27eea-label" class="mws-tree-item-label" href="/wiki/Mitglieder:Hauptseite">Mitglieder</a></div> </li> <li id="3f70b" class="mws-tree-item internal" role="treeitem"> <div><a id="3f70b-label" class="mws-tree-item-label" href="/wiki/wikiHilfe:Anleitung">wikiHilfe</a></div> </li> </ul> </div> </div> </div>; $container.append(menuHtml); // Safety: Falls andere Skripte Expander nachträglich hinzufügen $('#home-static-menu .mws-tree-expander').remove(); // Einrückung Top-Level neutralisieren (nur in unserem Menü) mw.util.addCSS( #home-static-menu #9a659-menu { padding-left: 0 !important; margin-left: 0 !important; } #home-static-menu #9a659-menu > li { margin-left: 0 !important; } #home-static-menu #9a659-menu > li > div { padding-left: 0 !important; margin-left: 0 !important; } #home-static-menu #9a659-menu > li .mws-tree-item-label { padding-left: 0 !important; margin-left: 0 !important; } ); } // DOM ready $(function () { injectHomeMenu(); hideSubpageTreePanel(); }); // Dynamisch nachgeladene Inhalte (Discovery, Ajax, Tabs) mw.hook('wikipage.content').add(function ($content) { injectHomeMenu($content); hideSubpageTreePanel($content); }); // Fallback, falls #sb-pri-cnt später kommt var tries = 0, max = 10; var iv = setInterval(function () { if (document.getElementById('sb-pri-cnt') || ++tries >= max) { clearInterval(iv); injectHomeMenu(); hideSubpageTreePanel(); } }, 300); })(mediaWiki, jQuery);