MediaWiki:Common.js

Материал из Абсурдопедии
Версия от 04:21, 28 апреля 2016; >Боевой Космический Роботонный Робот (стиль)
Перейти к навигации Перейти к поиску

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

  • Firefox / Safari: Удерживая клавишу Shift, нажмите на панели инструментов Обновить либо нажмите Ctrl+F5 или Ctrl+R (⌘+R на Mac)
  • Google Chrome: Нажмите Ctrl+Shift+R (⌘+Shift+R на Mac)
  • Edge: Удерживая Ctrl, нажмите Обновить либо нажмите Ctrl+F5
  • Opera: Нажмите Ctrl+F5.
importScript("MediaWiki:Dynavbar.js");
importScript("MediaWiki:Editsumm.js");

function addWikifButton() {
        var toolbar = (document.getElementById('cke_toolbar_source_1') || document.getElementById('toolbar') ) // Monobook+Modern
        if (!toolbar) return
        var i = document.createElement('img')
        i.src = 'http://upload.wikimedia.org/wikisource/ru/d/d1/Button-wikifikator.png'
        i.alt = i.title = 'Абсурдофикатор — оформитель текста'
        i.onclick = Wikify
        i.style.cursor = 'pointer'
        toolbar.appendChild(i)
}
if (wgAction == 'edit' || wgAction == 'submit') {
        importScriptURI('http://ru.wikipedia.org/w/index.php?title=MediaWiki:Wikificator.js&action=raw&ctype=text/javascript')
        addOnloadHook(addWikifButton)
}

/* <pre> */
 
/* Маскируем неправильно настроенные интервики — Edward. */
function hide_bad_iwiki()
{
  for(var i = 0; i < document.links.length; i ++)
  {
    if(document.links[i].href.match("title=(Km|Lo|Ms|Oc|Nn):"))
      document.links[i].innerHTML = "";
  }
}
 
/* Индекс цитирования (тИЦ) */
function yandex_rating_banner()
{
  txt = document.getElementById('yandex_rating');
  if(txt)
  {
    txt.innerHTML = '<a href="http://yaca.yandex.ru/yca/cat/Entertainment/Humor/Puns/"><img src="http://www.yandex.ru/cycounter?absurdopedia.wikia.com" title="Индекс цитирования (тИЦ) Абсурдопедии" /></a>';
  }
}
 
/* Обеспечиваем фокус с {{sysdep}} — Edward. */
function sysdep_init()
{
  var lo = document.getElementById('linux_only');
  var wo = document.getElementById('winds_only');
  if(navigator.userAgent.match("Linux") || navigator.userAgent.match("X11"))
  {
    if(lo) lo.style.display = "block";
    if(wo) wo.style.display = "none";
  }
  else
  {
    if(lo) lo.style.display = "none";
    if(wo) wo.style.display = "block";
  }
}
 
/* Обеспечиваем нигилистические фокусы (см., например, статью [[Google]]) */
$(function(){
  var nhl = $('#nihilism')[0];
  if(nhl && !document.location.href.match("diff"))
  {
    var msg = nhl.innerHTML;
    $('body')[0].style.backgroundColor = 'white';
    $('body').html("<div id='nihilism_message'" + (nhl.style.top == "0px" ? " style='top: 0px; left: 0px;'" : "") + ">" + msg + "</div>");
    $(document).dblclick(function(){ window.location = 'http://absurdopedia.net/index.php?title=' + encodeURIComponent(wgPageName) + '&action=edit'; });
  }
});
 
/* Обеспечиваем стирание памяти для «Людёй в чёрном» */
$(function(){
  if($('#erase_memory')[0]) setTimeout("$('#erase_memory').hide()", 20000);
});
 
/* Заставляем работать шаблон {{title}} (удалить этот код, когда заработает {{DISPLAYTITLE}}) */
function rewrite_title()
{
  if(wgAction == "view")
  {
    p = document.getElementById('correctTitle');
    if(p)
    {
      document.getElementById('firstHeading').innerHTML = p.innerHTML;
      document.getElementById('wrongTitle').style.display = "none";
    }
  }
}

 
/* + ссылка «править» для нулевой секции. */
$(function(){
 var h2 = $('h2').not('#toctitle h2')[0];
 if(!h2) return;
 
 var n = $(h2).find('span.mw-editsection');
 if(!n[0]) return;
 var zero = n.clone();
 $('#bodyContent :first').before(zero);
 
 var a = zero.find('a')[0];
 if (a.href.indexOf('&section=T') == -1 )  a.title = a.title.replace(/:.*$/,': 0');
 else a.title = 'Править секцию: 0';
 a.setAttribute('href', wgScript + '?title='+encodeURIComponent(wgPageName) + '&action=edit&section=0');
});
 
/* Вставка юзернейма с помощью <span class="insertusername"></span> */
$(function(){
  if((typeof(disableUsernameReplace) == 'undefined' || !disableUsernameReplace) && wgUserName != null)
     $('span.insertusername').html(wgUserName);
});
 
/* Прописываем для нужных страниц индивидуальные стили */
/* Записи имеют вид <имя страницы>:<имя стиля>. При этом должна существовать страница [[MediaWiki:Skin/<имя стиля>]], которая и будет включена. Записи разделяются через запятую.*/
reskin = {
    "ААААААААА!": "Aaaa.css"
}
 
/* Применяем для нужных страниц индивидуальные стили. Код нагло стырен из Анциклопедии */
if (reskin[wgPageName] != undefined && wgIsArticle == true) {
     skinName = (reskin[wgPageName].length > 0) ? reskin[wgPageName] : wgPageName + '.css';
     document.write('<style type="text/css">/*<![CDATA[*/ @import "/index.php?title=MediaWiki:Skin/' + skinName + '&action=raw&ctype=text/css"; /*]]>*/</style>');
 }
 
/* {{nologo}} */
function noLogo() { if(document.getElementById('nologo'))
  document.getElementById('p-logo').style.display = 'none';
}
 
function defaultUploadInfo()
{
  var rewrite = document.getElementById('wpForReUpload');
  if(!rewrite) return;
  if(rewrite.value == 1) return;
 
  var d = document.getElementById('wpUploadDescription');
  if(d) {
    if(!d.value.match(/\[\[(Категория|Category):/)) {
      d.value += "\n\n\n[[Категория:Некатегоризованные изображения]]";
    }
  }
}
 
addOnloadHook(onPageInit);
 
/* tooltips and access keys */
ta = new Object();
ta['pt-userpage'] = new Array('.','Моя страница пользователя');
ta['pt-anonuserpage'] = new Array('.','Страница пользователя для моего IP');
ta['pt-mytalk'] = new Array('n','Моя страница обсуждений');
ta['pt-anontalk'] = new Array('n','Страница обсуждений для моего IP');
ta['pt-preferences'] = new Array('','Мои настройки');
ta['pt-watchlist'] = new Array('l','Список страниц моего наблюдения');
ta['pt-mycontris'] = new Array('y','Список страниц, которые я редактировал');
ta['pt-login'] = new Array('o','Здесь можно зарегистрироваться в системе, но это необязательно');
ta['pt-anonlogin'] = new Array('o','Здесь можно зарегистрироваться в системе, но это необязательно');
ta['pt-logout'] = new Array('o','Отказаться от регистрации');
ta['ca-talk'] = new Array('t','Обсуждение статьи');
ta['ca-edit'] = new Array('e','Эту статью можно изменять. Перед сохранением изменений, пожалуйста, нажмите кнопку предварительного просмотра для визуальной проверки результата');
ta['ca-addsection'] = new Array('+','Добавить комментарий к обсуждению');
ta['ca-viewsource'] = new Array('e','Эта страница защищена от изменений, но вы можете посмотреть и скопировать её исходный текст');
ta['ca-history'] = new Array('h','Журнал изменений страницы');
ta['ca-protect'] = new Array('=','Защитить страницу от изменений');
ta['ca-delete'] = new Array('d','Удалить эту страницу');
ta['ca-undelete'] = new Array('d','Восстановить исправления страницы, сделанные до того, как она была удалена');
ta['ca-move'] = new Array('m','Переименовать страницу');
ta['ca-watch'] = new Array('w','Добавить эту страницу в ваш список наблюдения');
ta['ca-unwatch'] = new Array('w','Удалить эту страницу из вашего списка наблюдения');
ta['search'] = new Array('f','Искать это слово');
ta['p-logo'] = new Array('','Заглавная страница');
ta['n-mainpage'] = new Array('z','Перейти на заглавную страницу');
ta['n-portal'] = new Array('','О проекте, о том, что вы можете сделать, где что находится');
ta['n-currentevents'] = new Array('','Список текущих событий');
ta['n-recentchanges'] = new Array('r','Список последних изменений');
ta['n-randompage'] = new Array('x','Посмотреть случайную страницу');
ta['n-help'] = new Array('','Справочник по проекту «{{SITENAME}}»');
ta['n-sitesupport'] = new Array('','Поддержите проект');
ta['t-whatlinkshere'] = new Array('j','Список всех страниц, которые ссылаются на эту страницу');
ta['t-recentchangeslinked'] = new Array('k','Последние изменения в страницах, которые ссылаются на эту страницу');
ta['feed-rss'] = new Array('','Трансляция в формате RSS для этой страницы');
ta['feed-atom'] = new Array('','Трансляция в формате Atom для этой страницы');
ta['t-contributions'] = new Array('','Список страниц, которые изменял этот участник');
ta['t-emailuser'] = new Array('','Отправить письмо этому участнику');
ta['t-upload'] = new Array('u','Загрузить изображения или мультимедиа-файлы');
ta['t-specialpages'] = new Array('q','Список служебных страниц');
ta['t-print']=new Array('', 'Версия без кнопок, пригодная для распечатки');
ta['t-permalink'] = new Array('', 'Ссылка на текущую версию этой статьи');
ta['ca-nstab-main'] = new Array('c','Содержание статьи');
ta['ca-nstab-user'] = new Array('c','Персональная страница участника');
ta['ca-nstab-media'] = new Array('c','Мультимедиа-файл');
ta['ca-nstab-special'] = new Array('','Это служебная страница, она недоступна для редактирования');
ta['ca-nstab-wp'] = new Array('a','Страница проекта');
ta['ca-nstab-image'] = new Array('c','Страница изображения');
ta['ca-nstab-mediawiki'] = new Array('c','Страница сообщения MediaWiki');
ta['ca-nstab-template'] = new Array('c','Страница шаблона');
ta['ca-nstab-help'] = new Array('c','Страница справки');
ta['ca-nstab-category'] = new Array('c','Страница категории');
 
/* Ссылка на случайную статью */
 
$(function(){
$('.subnav-2a').each(function() {
    if($(this).attr('data-canonical')=='random')
      $(this).attr('href','/wiki/Служебная:RandomInCategory/Абсурдопедия:Случайные статьи');
});
});
 
/* </pre> */