MediaWiki:Common.js: Unterschied zwischen den Versionen

MediaWiki-Schnittstellenseite
Keine Bearbeitungszusammenfassung
Keine Bearbeitungszusammenfassung
Markierung: Zurückgesetzt
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) {
  // 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
// Überprüfe, ob die Meldung bereits auf der aktuellen Seite geladen wurde
Zeile 33: Zeile 8:
         dataType: 'html'
         dataType: 'html'
     }).done(function(data) {
     }).done(function(data) {
        // Füge den Inhalt der "MediaWiki:GlobalMessage"-Seite am Anfang des Inhaltsbereichs hinzu
    if (!data.contains("disableMessage")) {
        $('#mw-content-text').prepend('<div class="global-message" style="margin-bottom: 10px">' + removeFirstDiv(data) + '</div>');
    const tempElement = document.createElement('div');
    tempElement.innerHTML = htmlString;
    // remove <div/> "Translate this page"
    if (tempElement.querySelector('div')) { tempElement.querySelector('div').remove(); }
    // remove unused last <p/>
    const lastParagraph = tempElement.querySelectorAll('p')[paragraphs.length - 1];
    if (lastParagraph) { lastParagraph.remove(); }
        // 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">' + tempElement.innerHTML + '</div>');
    }
     });
     });
}
}

Version vom 5. August 2023, 14:37 Uhr

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

// Ü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) {
    	if (!data.contains("disableMessage")) {
	    	const tempElement = document.createElement('div');
		    tempElement.innerHTML = htmlString;
	
		    // remove <div/> "Translate this page"
		    if (tempElement.querySelector('div')) { tempElement.querySelector('div').remove(); }
	
		    // remove unused last <p/>
		    const lastParagraph = tempElement.querySelectorAll('p')[paragraphs.length - 1];
		    if (lastParagraph) { lastParagraph.remove(); }
	
	        // 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">' + tempElement.innerHTML + '</div>');
    	}
    });
}