MediaWiki:Common.js: Difference between revisions
Appearance
mNo edit summary |
mNo edit summary |
||
| Line 1: | Line 1: | ||
mw.loader.using(['mediawiki.util'], function () { | mw.loader.using(['mediawiki.util'], function () { | ||
$(function () { | $(function () { | ||
if (!window.nitroAds || !window.nitroAds.createAd) return; | if (!window.nitroAds || !window.nitroAds.createAd) return; | ||
| Line 12: | Line 11: | ||
function initTopBanner() { | function initTopBanner() { | ||
if (isMainPage) return; | if (isMainPage) return; | ||
if (flags.topBannerInit) return; | if (flags.topBannerInit) return; | ||
| Line 37: | Line 35: | ||
[728, 90], | [728, 90], | ||
[970, 90], | [970, 90], | ||
[970, 250], | |||
[320, 100], | [320, 100], | ||
[320, 50] | [320, 50] | ||
| Line 95: | Line 94: | ||
window.nitroAds.createAd('megabonk_video', { | window.nitroAds.createAd('megabonk_video', { | ||
format: "floating", | 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"] | geoDeny: ["RU"] | ||
}); | }); | ||
| Line 103: | Line 127: | ||
initAnchor(); | initAnchor(); | ||
initVideo(); | initVideo(); | ||
initSticky(); | |||
}); | }); | ||
}); | }); | ||
Revision as of 13:27, 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],
[970, 250],
[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: [
[160, 600]
],
geoDeny: ["RU"]
});
}
function initAnchor() {
if (flags.anchorInit) return;
flags.anchorInit = true;
window.nitroAds.createAd('megabonk_anchor', {
format: "anchor-v2",
anchor: "bottom",
anchorBgColor: "#000000",
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();
});
});