Участник:OlegCinema/common.js: различия между версиями

Материал из Викицитатника
Содержимое удалено Содержимое добавлено
Нет описания правки
Нет описания правки
Строка 11: Строка 11:
var regular = new RegExp('%5B%5B.*?%7C' + '(' + label["ЗСАП"] + '|' + label["ЗСПАТ"] + '|' + label["ЗСПАТ"] + ')' + '%5D%5D', 'g')
var regular = new RegExp('%5B%5B.*?%7C' + '(' + label["ЗСАП"] + '|' + label["ЗСПАТ"] + '|' + label["ЗСПАТ"] + ')' + '%5D%5D', 'g')
var name = Array.from(oldVal.matchAll(regular))[0]
var name = Array.from(oldVal.matchAll(regular))[0]
if (usernames[i].text !== undefined) {
var username = usernames[i].text
}
if (name !== undefined) {
if (name !== undefined) {
username = usernames[i].text
return oldVal.replace(regular, encodeURIComponent(
return oldVal.replace(regular, encodeURIComponent(
'[[Special:Permalink/' + (mw.config.get('wgRevisionId') + "#" + username || mw.config.get('wgCurRevisionId')) + "#" + username + '|' + decodeURIComponent(name[1]) + ']]'
'[[Special:Permalink/' + (mw.config.get('wgRevisionId') + "#" + username || mw.config.get('wgCurRevisionId')) + "#" + username + '|' + decodeURIComponent(name[1]) + ']]'

Версия от 21:11, 30 апреля 2020

// script
mw.hook('wikipage.content').add(function ($content) {
  $content.find('.tpl-permalink-reason a').attr('href', function (i, oldVal) {
    var links = document.querySelectorAll('.tpl-permalink-reason a');
    var usernames = document.querySelectorAll('.tpl-permalink-reason .userlink');
    var label = {
        "ЗСАП": encodeURIComponent("ВП:ЗСАП"),
        "ЗСПАТ": encodeURIComponent("ВП:ЗСПАТ"),
        "ЗСПИ": encodeURIComponent("ВП:ЗСПИ")
    }
    var regular = new RegExp('%5B%5B.*?%7C' + '(' + label["ЗСАП"] + '|' + label["ЗСПАТ"] + '|' + label["ЗСПАТ"] + ')' + '%5D%5D', 'g')
    var name = Array.from(oldVal.matchAll(regular))[0]
    if (name !== undefined) {
    	username = usernames[i].text
    	return oldVal.replace(regular, encodeURIComponent(
      '[[Special:Permalink/' + (mw.config.get('wgRevisionId') + "#" + username || mw.config.get('wgCurRevisionId')) + "#" + username + '|' + decodeURIComponent(name[1]) + ']]'
    ));
    }
  });
});