MediaWiki:Common.js: Unterschied zwischen den Versionen

Aus Wikikama
Keine Bearbeitungszusammenfassung
Markierung: Manuelle Zurücksetzung
Keine Bearbeitungszusammenfassung
 
(18 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt)
Zeile 1: Zeile 1:
/* Das folgende JavaScript wird für alle Benutzer geladen. */
/* Das folgende JavaScript wird für alle Benutzer geladen. */
// Support-Banner anzeigen, falls noch nicht geschlossen
$(function () {
$(function () {
  if (mw.config.get('wgNamespaceNumber') >= 0) {
    if (mw.config.get('wgNamespaceNumber') >= 0) {
    $('body').append(
        if (!sessionStorage.getItem('supportBannerClosed')) {
      '<div id="support-banner">❤️ <b>WIKIKAMA und Mimikama sind unabhängig und werbefrei – hilf mit, das möglich zu machen!</b> <a href="https://www.wikikama.org/index.php/Unterstützen">Jetzt unterstützen!</a></div>'
 
    );
            const bannerHTML = `
  }
                <div id="support-banner" style="display: none;">
                  <button id="support-banner-close" aria-label="Banner schließen" title="Schließen"></button>
                  <div class="sb-text">❤️ WIKIKAMA und Mimikama sind unabhängig und werbefrei – hilf mit, das möglich zu machen!</div>
                  <a class="sb-link" href="/index.php/Unterstützen" target="_blank" rel="noopener">Jetzt unterstützen!</a>
                </div>
            `;
 
            $('body').append(bannerHTML);
            $('#support-banner').fadeIn(400);
            $('body').css('padding-bottom', '120px');
 
            $('#support-banner-close').on('click', function () {
                $('#support-banner').fadeOut(300, function () {
                    $(this).remove();
                });
                sessionStorage.setItem('supportBannerClosed', 'true');
                $('body').css('padding-bottom', '0');
            });
        }
    }
});
});
// === Meta-Tags in den <head> einfügen ===
// === Meta-Tags in den <head> einfügen ===
$(function() {
$(function() {
  var og = '';
    var og = '';
  og += '<meta property="og:title" content="' + mw.config.get('wgTitle') + ' – Wikikama" />';
    og += '<meta property="og:title" content="' + mw.config.get('wgTitle') + ' – Wikikama" />';
  og += '<meta property="og:description" content="' + $('p').first().text().substr(0, 150) + '…" />';
    og += '<meta property="og:description" content="' + $('p').first().text().substr(0, 150) + '…" />';
  og += '<meta property="og:image" content="https://www.wikikama.org/images/default-og-image.png" />';
    og += '<meta property="og:image" content="https://www.wikikama.org/images/default-og-image.png" />';
  $('head').append( og );
    $('head').append( og );
});
 
// === ShareButtons ===
$(document).ready(function() {
    var shareBox = `
      <div class="a2a_kit a2a_kit_size_32 a2a_default_style wikikama-sharebox" style="margin-top: 40px; font-family: Arial, sans-serif;">
        <strong style="display:block; margin-bottom: 10px;">🔗 Teile diesen Artikel:</strong>
        <a class="a2a_button_facebook" title="Teilen auf Facebook"></a>
        <a class="a2a_button_mastodon" title="Teilen auf Threads" href="#"></a>
        <a class="a2a_button_x" title="Teilen auf X (Twitter)"></a>
        <a class="a2a_button_telegram" title="Teilen auf Telegram"></a>
        <a class="a2a_button_whatsapp" title="Teilen auf WhatsApp"></a>
        <a class="a2a_button_linkedin" title="Teilen auf LinkedIn"></a>
        <a class="a2a_button_reddit" title="Teilen auf Reddit"></a>
        <a class="a2a_button_email" title="Teilen per E-Mail"></a>
        <div style="clear: both;"></div>
      </div>
      <script async src="https://static.addtoany.com/menu/page.js"></script>
    `;
 
    if (mw.config.get("wgNamespaceNumber") === 0) {
        $(".mw-parser-output").append(shareBox);
        $(".a2a_button_mastodon").attr(
          "href",
          "https://threads.net/share?text=" +
            encodeURIComponent(document.title) +
            "&url=" +
            encodeURIComponent(window.location.href)
        );
    }
});
/* ──────────────────────────────────────────────────────────────────────────── */
/*  Dieser Block hängt bei eingeloggten Nutzer:innen die Klasse "logged-in"  */
/*  an den <body>, damit unsere CSS-Regeln (siehe Common.css) das Menü ein-  */
/*  bzw. ausblenden können.                                                  */
/* ──────────────────────────────────────────────────────────────────────────── */
$(function() {
    // mw.user.isAnon() ist false, sobald ein Konto angemeldet ist
    if (!mw.user.isAnon()) {
        document.body.classList.add('logged-in');
    }
    // Optional: Wenn jemand anonym ist, könnt ihr auch body.classList.add('anon') hinzufügen
});
});

Aktuelle Version vom 2. Juni 2025, 10:34 Uhr

/* Das folgende JavaScript wird für alle Benutzer geladen. */

// Support-Banner anzeigen, falls noch nicht geschlossen
$(function () {
    if (mw.config.get('wgNamespaceNumber') >= 0) {
        if (!sessionStorage.getItem('supportBannerClosed')) {

            const bannerHTML = `
                <div id="support-banner" style="display: none;">
                  <button id="support-banner-close" aria-label="Banner schließen" title="Schließen">✖</button>
                  <div class="sb-text">❤️ WIKIKAMA und Mimikama sind unabhängig und werbefrei – hilf mit, das möglich zu machen!</div>
                  <a class="sb-link" href="/index.php/Unterstützen" target="_blank" rel="noopener">Jetzt unterstützen!</a>
                </div>
            `;

            $('body').append(bannerHTML);
            $('#support-banner').fadeIn(400);
            $('body').css('padding-bottom', '120px');

            $('#support-banner-close').on('click', function () {
                $('#support-banner').fadeOut(300, function () {
                    $(this).remove();
                });
                sessionStorage.setItem('supportBannerClosed', 'true');
                $('body').css('padding-bottom', '0');
            });
        }
    }
});

// === Meta-Tags in den <head> einfügen ===
$(function() {
    var og = '';
    og += '<meta property="og:title" content="' + mw.config.get('wgTitle') + ' – Wikikama" />';
    og += '<meta property="og:description" content="' + $('p').first().text().substr(0, 150) + '…" />';
    og += '<meta property="og:image" content="https://www.wikikama.org/images/default-og-image.png" />';
    $('head').append( og );
});

// === ShareButtons ===
$(document).ready(function() {
    var shareBox = `
      <div class="a2a_kit a2a_kit_size_32 a2a_default_style wikikama-sharebox" style="margin-top: 40px; font-family: Arial, sans-serif;">
        <strong style="display:block; margin-bottom: 10px;">🔗 Teile diesen Artikel:</strong>
        <a class="a2a_button_facebook" title="Teilen auf Facebook"></a>
        <a class="a2a_button_mastodon" title="Teilen auf Threads" href="#"></a>
        <a class="a2a_button_x" title="Teilen auf X (Twitter)"></a>
        <a class="a2a_button_telegram" title="Teilen auf Telegram"></a>
        <a class="a2a_button_whatsapp" title="Teilen auf WhatsApp"></a>
        <a class="a2a_button_linkedin" title="Teilen auf LinkedIn"></a>
        <a class="a2a_button_reddit" title="Teilen auf Reddit"></a>
        <a class="a2a_button_email" title="Teilen per E-Mail"></a>
        <div style="clear: both;"></div>
      </div>
      <script async src="https://static.addtoany.com/menu/page.js"></script>
    `;

    if (mw.config.get("wgNamespaceNumber") === 0) {
        $(".mw-parser-output").append(shareBox);
        $(".a2a_button_mastodon").attr(
          "href",
          "https://threads.net/share?text=" +
            encodeURIComponent(document.title) +
            "&url=" +
            encodeURIComponent(window.location.href)
        );
    }
});
/* ──────────────────────────────────────────────────────────────────────────── */
/*  Dieser Block hängt bei eingeloggten Nutzer:innen die Klasse "logged-in"  */
/*  an den <body>, damit unsere CSS-Regeln (siehe Common.css) das Menü ein-   */
/*  bzw. ausblenden können.                                                   */
/* ──────────────────────────────────────────────────────────────────────────── */
$(function() {
    // mw.user.isAnon() ist false, sobald ein Konto angemeldet ist
    if (!mw.user.isAnon()) {
        document.body.classList.add('logged-in');
    }
    // Optional: Wenn jemand anonym ist, könnt ihr auch body.classList.add('anon') hinzufügen
});