User:Werdna/forcesecure.js
Appearance
Note: After publishing, you may have to bypass your browser's cache to see the changes.
- Firefox / Safari: Hold Shift while clicking Reload, or press either Ctrl-F5 or Ctrl-R (⌘-R on a Mac)
- Google Chrome: Press Ctrl-Shift-R (⌘-Shift-R on a Mac)
- Edge: Hold Ctrl while clicking Refresh, or press Ctrl-F5.
// ==UserScript==
// @name Rewrite diffs
// @namespace http://www.epstone.net
// @description Rewrites diff links to point to secure.wikimedia.org instead
// @include https://secure.wikimedia.org/*,http://*.*wiki*.org/*
// ==/UserScript==
var WikiLinkRegex = /http\:\/\/(\w+)\.(\w+)\.org\/(.+)/;
if (WikiLinkRegex.test(window.location)) {
var newhref = window.location.href;
newhref = newhref.replace( WikiLinkRegex, "http://secure.wikimedia.org/$2/$1/$3" );
newhref = newhref.replace( /\/wikimedia\//, '/wikipedia/' );
newhref = newhref.replace( /\/(\w+)\/www\//, '/wikipedia/$1' );
window.location.replace(newhref);
}
var div = document.getElementById('mw_contentholder');
if (!div)
div = document.getElementById('bodyContent');
var links = div.getElementsByTagName('a');
var i = 0;
var length = links.length;
var shown = 0;
for (i=0;i<length;i++)
{
link = links[i];
if (link && WikiLinkRegex.test(link.href))
{
newhref = link.href.replace( WikiLinkRegex, "http://secure.wikimedia.org/$2/$1/$3" );
newhref = newhref.replace( /\/wikimedia\//, '/wikipedia/' );
newhref = newhref.replace( /\/(\w+)\/www\//, '/wikipedia/$1/' );
link.href = newhref;
}
}