MediaWiki:Mobile.js: Unterschied zwischen den Versionen

KKeine Bearbeitungszusammenfassung
K Der Seiteninhalt wurde durch einen anderen Text ersetzt: „Das JavaScript hier wird für die Benutzer der mobilen Website geladen.:
Markierung: Ersetzt
 
(Eine dazwischenliegende Version desselben Benutzers wird nicht angezeigt)
Zeile 1: Zeile 1:
/* Das JavaScript hier wird für die Benutzer der mobilen Website geladen. */
/* Das JavaScript hier wird für die Benutzer der mobilen Website geladen. */
mw.loader.using( [ 'mediawiki.util', 'mediawiki.user' ] ).then( function () {
  // Nur anonymen Nutzern zeigen
  if ( !mw.user.isAnon() ) return;
  function addRegisterLink() {
    var $menu = $( '#mw-mf-page-left.menu.view-border-box' );
    if ( !$menu.length ) return;
    // Erst im persönlichen Bereich, sonst in Navigation
    var $ul = $menu.find( 'ul#p-personal.toggle-list__list' );
    if ( !$ul.length ) $ul = $menu.find( 'ul#p-navigation.toggle-list__list' ).first();
    if ( !$ul.length ) return;
    var href = mw.util.getUrl( 'Special:RequestAccount' );
    // Duplikate vermeiden (prüft absolute und relative URL)
    if ( $ul.find( 'a[href$="Special:RequestAccount"], a[href="' + href + '"]' ).length ) return;
    var $li = $( '<li class="toggle-list__item mw-list-item">' ).append(
      $( '<a>' ).attr( 'href', href ).text( 'Registrieren' ) // oder: 'Konto anfragen'
    );
    $ul.append( $li );
  }
  // Beim Laden und wenn Minerva das Menü dynamisch (neu) rendert
  $( addRegisterLink );
  new MutationObserver( addRegisterLink ).observe( document.body, { childList: true, subtree: true } );
} );