Jump to content

MediaWiki:Common.js: Difference between revisions

From Megabonk Wiki
No edit summary
Tag: Reverted
mNo edit summary
 
(21 intermediate revisions by the same user not shown)
Line 1: Line 1:
mw.loader.using(['mediawiki.api', 'mediawiki.util']).then(function () {
mw.loader.using(['mediawiki.util'], function () {
  var api = new mw.Api();
    $(function () {
        if (!window.nitroAds || !window.nitroAds.createAd) return;


  function togglePanel($btn) {
        var isMainPage =
    var targetId = $btn.attr('data-target');
            mw.config.get('wgIsMainPage') ||
    var $panel = $('#' + targetId);
            mw.config.get('wgPageName') === mw.config.get('wgMainPageTitle');
    var $row = $('#build-panel-row-' + $panel.data('title'));
    var $content = $panel.find('.build-content');
    var $loading = $panel.find('.build-loading');


    var isOpen = $row.is(':visible');
        window.megabonkNitro = window.megabonkNitro || {};
    if (isOpen) {
        var flags = window.megabonkNitro;
      $row.hide();
      $btn.text('Show');
      return;
    }


    if ($content.data('loaded') === 1) {
        function initTopBanner() {
      $row.show();
            if (isMainPage) return;
      $btn.text('Hide');
            if (flags.topBannerInit) return;
      return;
            flags.topBannerInit = true;
    }


    $loading.show();
            var bannerId = 'megabonk_top_banner';
    $row.show();
            var $bodyContent = $('#bodyContent');
    $btn.text('Hide');
            if (!$bodyContent.length) return;


    var title = $panel.data('title');
            var $banner = $('#' + bannerId);
            if (!$banner.length) {
                $banner = $('<div>', {
                    id: bannerId,
                    'class': 'nitro-top-banner'
                }).css({
                    margin: '10px 0 20px',
                    textAlign: 'center'
                });
                $bodyContent.prepend($banner);
            }


    api.get({
            window.nitroAds.createAd(bannerId, {
      action: 'parse',
                sizes: [
      page: title,
                    [728, 90],
      prop: 'text',
                    [970, 90],
      disableeditsection: 1,
                    [320, 100],
      formatversion: 2
                    [320, 50]
    }).then(function (data) {
                ],
      var html = (data && data.parse && data.parse.text) ? data.parse.text : '<em>Could not load content.</em>';
                geoDeny: ["RU"]
      $content.html(html);
            });
      $content.data('loaded', 1);
        }
    }).catch(function () {
 
      $content.html('<em>Error while loading content.</em>');
        function initSidebarAd() {
    }).always(function () {
            if (flags.sidebarInit) return;
      $loading.hide();
            flags.sidebarInit = true;
 
            var adId = 'megabonk_sidebar';
            var $menuContainer = $('.vector-main-menu-container');
            if (!$menuContainer.length) return;
 
            var $adDiv = $('#' + adId);
            if (!$adDiv.length) {
                $adDiv = $('<div>', {
                    id: adId,
                    'class': 'nitro-sidebar-ad'
                }).css({
                    margin: '20px 0',
                    textAlign: 'center'
                });
 
                $menuContainer.after($adDiv);
            }
 
            window.nitroAds.createAd(adId, {
                sizes: [
                    [300, 350],
                    [300, 250],
                    [300, 600],
                    [160, 600]
                ],
                geoDeny: ["RU"]
            });
        }
 
        function initAnchor() {
            if (flags.anchorInit) return;
            flags.anchorInit = true;
 
            window.nitroAds.createAd('megabonk_anchor', {
                format: "anchor-v2",
                anchor: "bottom",
                anchorBgColor: "transparent",
                anchorClose: false,
                anchorPersistClose: false,
                anchorStickyOffset: 0,
                mediaQuery: "(min-width: 0px)",
                geoDeny: ["RU"]
            });
        }
 
        function initVideo() {
            if (flags.videoInit) return;
            flags.videoInit = true;
 
            window.nitroAds.createAd('megabonk_video', {
                format: "floating",
                geoDeny: ["RU"]
            });
        }
 
        function initSticky() {
            if (flags.stickyInit) return;
            flags.stickyInit = true;
 
            window.nitroAds.createAd('megabonk_sticky', {
                format: "rail",
                rail: "right",
                railOffsetTop: 0,
                railOffsetBottom: 0,
                railCollisionWhitelist: [],
                railCloseColor: "#666666",
                railSpacing: 5,
                railStack: true,
                railStickyTop: 0,
                railVerticalAlign: "center",
                sizes: [
                    [160, 600],
                    [300, 250],
                    [300, 600]
                ],
                mediaQuery: "(min-width: 1025px)",
                geoDeny: ["RU"]
            });
        }
 
        initTopBanner();
        initSidebarAd();
        initAnchor();
        initVideo();
        initSticky();
     });
     });
  }
  $(document).on('click', '.build-toggle', function () {
    togglePanel($(this));
  });
});
});

Latest revision as of 14:32, 24 November 2025

mw.loader.using(['mediawiki.util'], function () {
    $(function () {
        if (!window.nitroAds || !window.nitroAds.createAd) return;

        var isMainPage =
            mw.config.get('wgIsMainPage') ||
            mw.config.get('wgPageName') === mw.config.get('wgMainPageTitle');

        window.megabonkNitro = window.megabonkNitro || {};
        var flags = window.megabonkNitro;

        function initTopBanner() {
            if (isMainPage) return;
            if (flags.topBannerInit) return;
            flags.topBannerInit = true;

            var bannerId = 'megabonk_top_banner';
            var $bodyContent = $('#bodyContent');
            if (!$bodyContent.length) return;

            var $banner = $('#' + bannerId);
            if (!$banner.length) {
                $banner = $('<div>', {
                    id: bannerId,
                    'class': 'nitro-top-banner'
                }).css({
                    margin: '10px 0 20px',
                    textAlign: 'center'
                });
                $bodyContent.prepend($banner);
            }

            window.nitroAds.createAd(bannerId, {
                sizes: [
                    [728, 90],
                    [970, 90],
                    [320, 100],
                    [320, 50]
                ],
                geoDeny: ["RU"]
            });
        }

        function initSidebarAd() {
            if (flags.sidebarInit) return;
            flags.sidebarInit = true;

            var adId = 'megabonk_sidebar';
            var $menuContainer = $('.vector-main-menu-container');
            if (!$menuContainer.length) return;

            var $adDiv = $('#' + adId);
            if (!$adDiv.length) {
                $adDiv = $('<div>', {
                    id: adId,
                    'class': 'nitro-sidebar-ad'
                }).css({
                    margin: '20px 0',
                    textAlign: 'center'
                });

                $menuContainer.after($adDiv);
            }

            window.nitroAds.createAd(adId, {
                sizes: [
                    [300, 350],
                    [300, 250],
                    [300, 600],
                    [160, 600]
                ],
                geoDeny: ["RU"]
            });
        }

        function initAnchor() {
            if (flags.anchorInit) return;
            flags.anchorInit = true;

            window.nitroAds.createAd('megabonk_anchor', {
                format: "anchor-v2",
                anchor: "bottom",
                anchorBgColor: "transparent",
                anchorClose: false,
                anchorPersistClose: false,
                anchorStickyOffset: 0,
                mediaQuery: "(min-width: 0px)",
                geoDeny: ["RU"]
            });
        }

        function initVideo() {
            if (flags.videoInit) return;
            flags.videoInit = true;

            window.nitroAds.createAd('megabonk_video', {
                format: "floating",
                geoDeny: ["RU"]
            });
        }

        function initSticky() {
            if (flags.stickyInit) return;
            flags.stickyInit = true;

            window.nitroAds.createAd('megabonk_sticky', {
                format: "rail",
                rail: "right",
                railOffsetTop: 0,
                railOffsetBottom: 0,
                railCollisionWhitelist: [],
                railCloseColor: "#666666",
                railSpacing: 5,
                railStack: true,
                railStickyTop: 0,
                railVerticalAlign: "center",
                sizes: [
                    [160, 600],
                    [300, 250],
                    [300, 600]
                ],
                mediaQuery: "(min-width: 1025px)",
                geoDeny: ["RU"]
            });
        }

        initTopBanner();
        initSidebarAd();
        initAnchor();
        initVideo();
        initSticky();
    });
});