Ivan-r (обсуждение | вклад) (временно (или постоянно?) заменил викификатор с Википедии на викификатор с Minecraft Wiki) |
Ivan-r (обсуждение | вклад) мНет описания правки |
||
Строка 96: | Строка 96: | ||
$(addAjaxDisplayLink); |
$(addAjaxDisplayLink); |
||
− | / |
+ | // Добавляет кнопки вставки часто используемых описаний правки и Викификатор |
if ( mw.config.get( 'wgAction' ) == 'edit' || mw.config.get( 'wgAction' ) == 'submit' ) { |
if ( mw.config.get( 'wgAction' ) == 'edit' || mw.config.get( 'wgAction' ) == 'submit' ) { |
||
mw.loader.load( '/index.php?title=MediaWiki:AddSumButton.js&action=raw&ctype=text/javascript'); |
mw.loader.load( '/index.php?title=MediaWiki:AddSumButton.js&action=raw&ctype=text/javascript'); |
||
mw.loader.load( '//minecraft-ru.gamepedia.com/index.php?title=MediaWiki:Wikificator.js&action=raw&ctype=text/javascript'); |
mw.loader.load( '//minecraft-ru.gamepedia.com/index.php?title=MediaWiki:Wikificator.js&action=raw&ctype=text/javascript'); |
||
} |
} |
||
− | |||
// Скрипт для отслеживания от Crazyegg |
// Скрипт для отслеживания от Crazyegg |
||
Строка 108: | Строка 107: | ||
a.src=document.location.protocol+"//script.crazyegg.com/pages/scripts/0011/8371.js?"+Math.floor(new Date().getTime()/3600000); |
a.src=document.location.protocol+"//script.crazyegg.com/pages/scripts/0011/8371.js?"+Math.floor(new Date().getTime()/3600000); |
||
a.async=true;a.type="text/javascript";b.parentNode.insertBefore(a,b)}, 1); |
a.async=true;a.type="text/javascript";b.parentNode.insertBefore(a,b)}, 1); |
||
− | |||
− | |||
/* Помечать внешние ссылки как внутренние */ |
/* Помечать внешние ссылки как внутренние */ |
Версия от 14:51, 19 декабря 2016
// Блокирует триггер, который открывает внутреннюю URL-ссылку на вики при щелчке в новой вкладке (очистить, править и т.д.)
$('a[href^="//terraria-ru.gamepedia.com"]').removeAttr('target');
// Открывает ссылки в новой вкладке у шаблон:внут и шаблон:внеш
$('.linkNewTab a').each(function(){
$(this).attr('target','_blank');
});
// Создаёт обход значений стиля "border-collapse" + "border-radius" для таблиц класса "terraria"
/* (временно?) отключает, ломает отображение таблиц с процентным значением ширины
$('.terraria:not(.outer)')
.removeClass('terraria')
.addClass('inner')
.wrap('<table class="terraria outer"></table>');
*/
// Запрещает создание страниц (кроме обсуждений) анонимами и перенаправляет на страницу регистрации (фильтр злоупотреблений также запрещает это действие, но он выдаёт предупреждение при правке страницы)
var wgPageName = mw.config.get( 'wgPageName' );
var wgUserName = mw.config.get( 'wgUserName' );
var isTalk = false, isAnon = false;
if (wgPageName.indexOf('talk:') > -1 || wgPageName.indexOf('Talk:') > -1) isTalk = true;
if (wgUserName === null) isAnon = true;
if (isAnon == true){
$('a.new').each(function(){
var href = $(this).attr('href');
$(this).attr('href', href.replace(/&action=edit/g, '') );
});
}
if (isAnon == true && isTalk == false) {
var anonWarnText = 'Создание страниц анонимными участниками в настоящее время недоступно. <br> Чтобы создать эту страницу для начала, пожалуйста, <a href="http://terraria-ru.gamepedia.com/Служебная:Создать_учётную_запись">зарегистрируйтесь</a>.';
$('body').append('<div class="anonWarnOverlay" style="display:none; background-color: #000; opacity: 0.4; position: fixed; top: 0px; left: 0px; width: 100%; height: 100%; z-index: 500;"></div>');
$('body').prepend('<div class="anonWarnBox" style="display:none; text-align:center; font-weight: bold; box-shadow: 7px 7px 5px #000; font-size: 0.9em; line-height: 1.5em; z-index: 501; opacity: 1; position: fixed; width: 50%; left: 25%; top: 30%; background: #F7F7F7; border: #222 ridge 1px; padding: 20px;">' + anonWarnText + '</div>');
$('#ca-edit a:contains(Create), #ca-ve-edit a:contains(Create), a.external.text:contains(edit this page)').attr('href', '#').click(function(){
$('.anonWarnBox').show();
$('.anonWarnOverlay').show();
});
$('.anonWarnOverlay').click(function(){
$('.anonWarnBox').hide();
$(this).hide();
});
}
// AJAX-таблицы
function addAjaxDisplayLink() {
$("table.ajax").each(function (i) {
var table = $(this).attr("id", "ajaxTable" + i);
table.find(".nojs-message").remove();
var headerLinks = $('<span style="float: right;">').appendTo(table.find('th').first());
var cell = table.find("td").first(), needLink = true;
cell.parent().show();
if (cell.hasClass("showLinkHere")) {
var old = cell.html(), rep = old.replace(/\[link\](.*?)\[\/link\]/, '<a href="javascript:;" class="ajax-load-link">$1</a>');
if (rep != old) {
cell.html(rep);
needLink = false;
}
}
if (needLink) headerLinks.html('[<a href="javascript:;" class="ajax-load-link">show data</a>]');
table.find(".ajax-load-link").parent().andSelf().filter('a').click(function(event) {
event.preventDefault();
var sourceTitle = table.data('ajax-source-page'), baseLink = mw.config.get('wgScript') + '?';
cell.text('Пожалуйста подождите, содержимое загружается...');
$.get(baseLink + $.param({ action: 'render', title: sourceTitle }), function (data) {
if (data) {
cell.html(data);
cell.find('.ajaxHide').remove();
cell.find('.terraria').removeClass('terraria');
if (cell.find("table.sortable").length) {
mw.loader.using('jquery.tablesorter', function() {
cell.find("table.sortable").tablesorter();
});
}
headerLinks.text('[');
headerLinks.append($('<a>править</a>').attr('href', baseLink + $.param({ action: 'edit', title: sourceTitle })));
headerLinks.append(document.createTextNode(']\u00A0['));
var shown = true;
$("<a href='javascript:;'>скрыть</a>").click(function() {
shown = !shown;
shown ? cell.show() : cell.hide();
$(this).text(shown ? "скрыть" : "показать");
}).appendTo(headerLinks);
headerLinks.append(document.createTextNode(']'));
}
}).error(function() {
cell.text('Невозможно загрузить таблицу; вероятно, целевая страница не существует.');
});
});
});
}
$(addAjaxDisplayLink);
// Добавляет кнопки вставки часто используемых описаний правки и Викификатор
if ( mw.config.get( 'wgAction' ) == 'edit' || mw.config.get( 'wgAction' ) == 'submit' ) {
mw.loader.load( '/index.php?title=MediaWiki:AddSumButton.js&action=raw&ctype=text/javascript');
mw.loader.load( '//minecraft-ru.gamepedia.com/index.php?title=MediaWiki:Wikificator.js&action=raw&ctype=text/javascript');
}
// Скрипт для отслеживания от Crazyegg
setTimeout(function(){var a=document.createElement("script");
var b=document.getElementsByTagName("script")[0];
a.src=document.location.protocol+"//script.crazyegg.com/pages/scripts/0011/8371.js?"+Math.floor(new Date().getTime()/3600000);
a.async=true;a.type="text/javascript";b.parentNode.insertBefore(a,b)}, 1);
/* Помечать внешние ссылки как внутренние */
#content a.external[href^="http://terraria-ru.gamepedia.com"],
#content a.external[href^="//terarria-ru.gamepedia.com"] {
background: none;
padding-right: 0;
}