Update MediaWiki Redirects Fixer to 1.0.1
- Add wiki.archlinux.org, wiki.winehq.org, and wiki.archiveteam.org - Fix handling !0 and !1 (example: https://wiki.archiveteam.org/index.php/Wiki_farms)
This commit is contained in:
parent
8d5abf9a30
commit
ad095620d9
|
@ -2,8 +2,11 @@
|
||||||
// @name MediaWiki Redirects Fixer
|
// @name MediaWiki Redirects Fixer
|
||||||
// @namespace blankie-scripts
|
// @namespace blankie-scripts
|
||||||
// @match https://*.wikipedia.org/*
|
// @match https://*.wikipedia.org/*
|
||||||
|
// @match https://wiki.archlinux.org/*
|
||||||
|
// @match https://wiki.winehq.org/*
|
||||||
|
// @match https://wiki.archiveteam.org/*
|
||||||
// @grant none
|
// @grant none
|
||||||
// @version 1.0.0
|
// @version 1.0.1
|
||||||
// @author blankie
|
// @author blankie
|
||||||
// @description Fixes redirects of pages with anchors on Wikipedia/MediaWiki instances when Javascript is disabled
|
// @description Fixes redirects of pages with anchors on Wikipedia/MediaWiki instances when Javascript is disabled
|
||||||
// @inject-into content
|
// @inject-into content
|
||||||
|
@ -29,7 +32,13 @@ for (let script of document.querySelectorAll("script")) {
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
let rlconf = JSON.parse(match[1]);
|
// Handle things like "wgCSPNonce":!1
|
||||||
|
let rlconf = match[1].replaceAll(/(?<=[{,])("\w+":)!([01])(?=[,}])/g, function(_, p1, p2) {
|
||||||
|
let value = p2 == "0" ? "true" : "false";
|
||||||
|
return `${p1}${value}`;
|
||||||
|
});
|
||||||
|
rlconf = JSON.parse(rlconf);
|
||||||
|
|
||||||
if (rlconf.wgInternalRedirectTargetUrl) {
|
if (rlconf.wgInternalRedirectTargetUrl) {
|
||||||
let url = new URL(rlconf.wgInternalRedirectTargetUrl, location);
|
let url = new URL(rlconf.wgInternalRedirectTargetUrl, location);
|
||||||
let scrollTo = url.hash;
|
let scrollTo = url.hash;
|
||||||
|
|
Loading…
Reference in New Issue