From 5f1e399574b9f8f79bc67cd84075252716b6602e Mon Sep 17 00:00:00 2001 From: DmitriyMX Date: Sat, 28 Sep 2019 23:24:40 +0000 Subject: [PATCH] Update userscript.js --- userscript.js | 24 ++++++++++++++++++------ 1 file changed, 18 insertions(+), 6 deletions(-) diff --git a/userscript.js b/userscript.js index bce0031..841b254 100644 --- a/userscript.js +++ b/userscript.js @@ -1,18 +1,30 @@ // ==UserScript== // @name JRH: JoyReactor Helper -// @version 2.1 +// @version 2.2 // @author DmitriyMX // @match http://joy.reactor.cc/* // @grant none // @run-at document-end // ==/UserScript== +const reactorDomain = 'joy.reactor.cc'; + +function getKnownReactorDomains() { + return ['reactor.cc', 'joyreactor.cc']; +} + /** - * Исправляет ссылки-редиректы + * Исправляет внутренние ссылки "реактора" */ -function fixNofollowLinks() { - document.querySelectorAll('a[rel="nofollow"][href^="//reactor.cc"]').forEach((elm) => { - elm.href = elm.href.replace('//reactor.cc', '//joy.reactor.cc'); +function fixReactorLinks() { + getKnownReactorDomains().forEach(domain => { + document.querySelectorAll('a[href^="http://' + domain + '/"]').forEach(elm => { + elm.href = elm.href.replace('http://' + domain + '/', 'http://' + reactorDomain + '/'); + }); + + document.querySelectorAll('a[href^="//' + domain + '/"]').forEach(elm => { + elm.href = elm.href.replace('//' + domain + '/', '//' + reactorDomain + '/'); + }); }); } @@ -124,7 +136,7 @@ function unNewComments() { 'use strict'; removeExcessElements(); - fixNofollowLinks(); + fixReactorLinks(); if (isPostPage()) { removeExcessElementsInPost(); collapseTreeComments();