MediaWiki:Common.js: Unterschied zwischen den Versionen

MediaWiki-Schnittstellenseite
Keine Bearbeitungszusammenfassung
Markierung: Zurückgesetzt
Keine Bearbeitungszusammenfassung
Markierung: Manuelle Zurücksetzung
Zeile 1: Zeile 1:
/* Das folgende JavaScript wird für Benutzer des Citizen-Skins geladen */
/* Das folgende JavaScript wird für Benutzer des Citizen-Skins geladen */


function removeUnusedStuff(html) {
function removeFirstDiv(htmlString) {
   // Schritt 1: Ein temporäres DOM-Element erstellen
   // Schritt 1: Ein temporäres DOM-Element erstellen
   const tempElement = document.createElement('div');
   const tempElement = document.createElement('div');
   tempElement.innerHTML = html;
   tempElement.innerHTML = htmlString;


   if (tempElement.querySelector('div')) { tempElement.querySelector('div').remove(); }
   // Schritt 2: Das erste div-Element auswählen
  const firstDiv = tempElement.querySelector('div');


   const lastParagraph = tempElement.querySelectorAll('p')[paragraphs.length - 1];
   // Schritt 3: Das erste div-Element entfernen, wenn vorhanden
   if (lastParagraph) { lastParagraph.remove(); }
   if (firstDiv) {
    firstDiv.remove();
  }
 
  const paragraphs = tempElement.querySelectorAll('p');


  // Schritt 3: Das letzte <p>-Element entfernen, wenn vorhanden
  const lastParagraph = paragraphs[paragraphs.length - 1];
  if (lastParagraph) {
    lastParagraph.remove();
  }
  // Schritt 4: Das modifizierte HTML zurückgeben
   return tempElement.innerHTML;
   return tempElement.innerHTML;
}
}
Zeile 21: Zeile 33:
         dataType: 'html'
         dataType: 'html'
     }).done(function(data) {
     }).done(function(data) {
         $('#mw-content-text').prepend('<div class="global-message" style="margin-bottom: 10px">' + removeUnusedStuff(data) + '</div>');
        // Füge den Inhalt der "MediaWiki:GlobalMessage"-Seite am Anfang des Inhaltsbereichs hinzu
         $('#mw-content-text').prepend('<div class="global-message" style="margin-bottom: 10px">' + removeFirstDiv(data) + '</div>');
     });
     });
}
}

Version vom 5. August 2023, 14:41 Uhr

/* Das folgende JavaScript wird für Benutzer des Citizen-Skins geladen */

function removeFirstDiv(htmlString) {
  // Schritt 1: Ein temporäres DOM-Element erstellen
  const tempElement = document.createElement('div');
  tempElement.innerHTML = htmlString;

  // Schritt 2: Das erste div-Element auswählen
  const firstDiv = tempElement.querySelector('div');

  // Schritt 3: Das erste div-Element entfernen, wenn vorhanden
  if (firstDiv) {
    firstDiv.remove();
  }
  
  const paragraphs = tempElement.querySelectorAll('p');

  // Schritt 3: Das letzte <p>-Element entfernen, wenn vorhanden
  const lastParagraph = paragraphs[paragraphs.length - 1];
  if (lastParagraph) {
    lastParagraph.remove();
  }

  // Schritt 4: Das modifizierte HTML zurückgeben
  return tempElement.innerHTML;
}

// Überprüfe, ob die Meldung bereits auf der aktuellen Seite geladen wurde
if (!$('.global-message').length) {
    // Lade den Inhalt der "MediaWiki:GlobalMessage"-Seite asynchron
    $.ajax({
        url: mw.util.getUrl('MediaWiki:GlobalMessage', { action: 'render' }), // action=render, um nur den Inhalt zu erhalten
        dataType: 'html'
    }).done(function(data) {
        // Füge den Inhalt der "MediaWiki:GlobalMessage"-Seite am Anfang des Inhaltsbereichs hinzu
        $('#mw-content-text').prepend('<div class="global-message" style="margin-bottom: 10px">' + removeFirstDiv(data) + '</div>');
    });
}