MediaWiki:Common.js: Unterschied zwischen den Versionen

MediaWiki-Schnittstellenseite
Keine Bearbeitungszusammenfassung
Keine Bearbeitungszusammenfassung
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 removeFirstDiv(htmlString) {
function removeUnusedStuff(html) {
  // Schritt 1: Ein temporäres DOM-Element erstellen
   const tempElement = document.createElement('div');
   const tempElement = document.createElement('div');
   tempElement.innerHTML = htmlString;
   tempElement.innerHTML = htmlString;
Zeile 8: Zeile 7:
   if (tempElement.querySelector('div')) { tempElement.querySelector('div').remove(); }
   if (tempElement.querySelector('div')) { tempElement.querySelector('div').remove(); }
    
    
   const paragraphs = tempElement.querySelectorAll('p');
   const lastParagraph = tempElement.querySelectorAll('p')[tempElement.querySelectorAll('p').length - 1];
 
  const lastParagraph = paragraphs[paragraphs.length - 1];
   if (lastParagraph) { lastParagraph.remove(); }
   if (lastParagraph) { lastParagraph.remove(); }


  // Schritt 4: Das modifizierte HTML zurückgeben
   return tempElement.innerHTML;
   return tempElement.innerHTML;
}
}
Zeile 19: Zeile 15:
// Überprüfe, ob die Meldung bereits auf der aktuellen Seite geladen wurde
// Überprüfe, ob die Meldung bereits auf der aktuellen Seite geladen wurde
if (!$('.global-message').length) {
if (!$('.global-message').length) {
    // Lade den Inhalt der "MediaWiki:GlobalMessage"-Seite asynchron
     $.ajax({
     $.ajax({
         url: mw.util.getUrl('MediaWiki:GlobalMessage', { action: 'render' }), // action=render, um nur den Inhalt zu erhalten
         url: mw.util.getUrl('MediaWiki:GlobalMessage', { action: 'render' }), // action=render, um nur den Inhalt zu erhalten
         dataType: 'html'
         dataType: 'html'
     }).done(function(data) {
     }).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">' + removeUnusedStuff(data) + '</div>');
         $('#mw-content-text').prepend('<div class="global-message" style="margin-bottom: 10px">' + removeFirstDiv(data) + '</div>');
     });
     });
}
}

Version vom 5. August 2023, 14:43 Uhr

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

function removeUnusedStuff(html) {
  const tempElement = document.createElement('div');
  tempElement.innerHTML = htmlString;
  
  if (tempElement.querySelector('div')) { tempElement.querySelector('div').remove(); }
  
  const lastParagraph = tempElement.querySelectorAll('p')[tempElement.querySelectorAll('p').length - 1];
  if (lastParagraph) { lastParagraph.remove(); }

  return tempElement.innerHTML;
}

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