MediaWiki:Common.js

Материал из MiningWiki — свободной шахтёрской энциклопедии
Перейти к навигацииПерейти к поиску

Замечание. Возможно, после сохранения вам придётся очистить кэш своего браузера, чтобы увидеть изменения.

  • Firefox / Safari: Удерживая клавишу Shift, нажмите на панели инструментов Обновить либо нажмите Ctrl-F5 или Ctrl-R (⌘-R на Mac)
  • Google Chrome: Нажмите Ctrl-Shift-R (⌘-Shift-R на Mac)
  • Internet Explorer: Удерживая Ctrl, нажмите Обновить либо нажмите Ctrl-F5
  • Opera: Перейдите в Menu → Настройки (Opera → Настройки на Mac), а затем Безопасность → Очистить историю посещений → Кэшированные изображения и файлы
/* Размещённый здесь JavaScript код будет загружаться всем пользователям при обращении к каждой странице */

/* Google Analytics 4 */
window.dataLayer = window.dataLayer || [];
function gtag(){dataLayer.push(arguments);}
gtag('js', new Date());
gtag('config', 'G-S339JBKYQJ');
$('head').append($('<script/>').attr('async', 1).attr('src', 'https://www.googletagmanager.com/gtag/js?id=G-S339JBKYQJ'));
/* /Google Analytics 4 */

/** Morph LM Edition *************************************
  *
  *  Description: слайдер скрытого контента
  *  Stolen^W Made by:  hikki-zadrot, Tachikoma, Anotubus
  *  Стырено из Лукоморья (http://lurkmore.to/?oldid=1236836)
  */
 
function createMorphObjects() {
	var morphTargets = new Array(), morphLinks = new Array(), currentMorph = new Array();
 
	function morphHandler(cont, num) {
		return function() {
			currentMorph[cont].curr = num;
			var t = morphTargets[cont];
                        var l = morphLinks[cont];
			for(i in t) if(currentMorph[cont].ms != null) t[i].style.display = t[i].className.match(l[num].className.replace(/.*morphlink\s+morph(\S+).*/, '$1'))? "" : "none"; else t[i].style.display = i==num ? "" : "none";
			var h = currentMorph[cont].hilight, d = currentMorph[cont].defstyle;
			for(i in l) l[i].setAttribute('style', (i!=num)?d:h);
		};
	};
 
	function morphNext(cont) {
		return function() {
			var t = currentMorph[cont]; 
			morphHandler(cont, t.curr<(t.max-1)?t.curr+1:0)();
		}
	}
 
	function morphPrev(cont) {
		return function() {
			var t = currentMorph[cont]; 
			morphHandler(cont, t.curr>0?t.curr-1:t.max-1)();
		}
	}
 
	var morphContainers = document.querySelectorAll(".morphcontainer");
	for(var i = 0; i<morphContainers.length; i++) {
		var this_ = morphContainers[i];
		morphTargets[i] = {};
		morphLinks[i] = {};
 
		var isHover = this_.className.match(/\bhover\b/);
                var isManualsort = this_.className.match(/\bmanualsort\b/);
 
		var morphCs = this_.querySelectorAll(".morphcontent");
		var morphLs = this_.querySelectorAll(".morphlink");
		var h = this_.querySelector(".morphlink_hilight");
 
		h = h ? h.getAttribute('style') : "color:blue; text-decoration:underline; cursor: pointer;";
		var def = this_.querySelector(".morphlink_default");
		def = def ? def.getAttribute('style') : "color:blue; cursor: pointer;";
		currentMorph[i] = {max: morphLs.length, curr: 0, hilight: h, defstyle: def, ms: isManualsort};
 
		for(var m = 0; m<morphLs.length; m++) {
			morphLinks[i][m] = morphLs[m];
			$(morphLs[m]).on(isHover?'mouseover':'click', morphHandler(i, m));
                        morphLs[m].setAttribute('style', m?def:h);
		};
 
                for(var m = 0; m<morphCs.length; m++) {
			morphTargets[i][m] = morphCs[m];
                        if (isManualsort != null) morphCs[m].style.display = morphCs[m].className.match(morphLs[0].className.replace(/.*morphlink\s+morph(\S+).*/, '$1'))? "" : "none"; else morphCs[m].style.display = m ? "none" : "";
		};
 
		$(this_).find(".morphprev").click(morphPrev(i));
		$(this_).find(".morphnext").click(morphNext(i));
	}
}
 
$(createMorphObjects);

/* Счётчик LiveInternet */
$(function() {
  var $cnt = $('<img/>').attr('src',
      'https://counter.yadro.ru/hit?t14.1;r' + escape(document.referrer)+((typeof(screen)=="undefined")?"":";s"+screen.width+"*"+screen.height+"*"+(screen.colorDepth?screen.colorDepth:screen.pixelDepth))+";u"+escape(document.URL)+";"+Math.random());
  $('#footer').append($cnt);
});

/*Добавляем кнопку викификатора*/
mw.hook( 'wikieditor.toolbar.wikificator' ).add(function(){
	// Переместить кнопку в начало.
	$('.group-format').prepend( $('a[title*="Викификатор"]') )
});
mw.loader.load('https://ru.wikipedia.org/w/index.php?title=MediaWiki:Gadget-wikificator.js&action=raw&ctype=text/javascript&oldid=114525856')