Reddit to Redlib

Converts Reddit links to Redlib (previously Libreddit) links, and replaces old url in browser history. Also works in Firefox Android.

Dovrai installare un'estensione come Tampermonkey, Greasemonkey o Violentmonkey per installare questo script.

Dovrai installare un'estensione come Tampermonkey o Violentmonkey per installare questo script.

Dovrai installare un'estensione come Tampermonkey o Violentmonkey per installare questo script.

Dovrai installare un'estensione come Tampermonkey o Userscripts per installare questo script.

Dovrai installare un'estensione come ad esempio Tampermonkey per installare questo script.

Dovrai installare un gestore di script utente per installare questo script.

(Ho già un gestore di script utente, lasciamelo installare!)

Dovrai installare un'estensione come ad esempio Stylus per installare questo stile.

Dovrai installare un'estensione come ad esempio Stylus per installare questo stile.

Dovrai installare un'estensione come ad esempio Stylus per installare questo stile.

Dovrai installare un'estensione per la gestione degli stili utente per installare questo stile.

Dovrai installare un'estensione per la gestione degli stili utente per installare questo stile.

Dovrai installare un'estensione per la gestione degli stili utente per installare questo stile.

(Ho già un gestore di stile utente, lasciamelo installare!)

// ==UserScript==
// @name         Reddit to Redlib
// @namespace    happyviking
// @version      1.1
// @description  Converts Reddit links to Redlib (previously Libreddit) links, and replaces old url in browser history. Also works in Firefox Android.
// @author       HappyViking
// @match        *://*.reddit.com/*
// @exclude      *://*.reddit.com/media*
// @icon         https://www.google.com/s2/favicons?domain=www.reddit.com
// @grant        none
// @run-at       document-start
// @license      MIT
// ==/UserScript==


// Heavy credit to:
// https://greasyfork.org/en/scripts/432711-libreddit-converter/code
// https://greasyfork.org/en/scripts/465089-libreddit-redirector/code


function isProperTargetPage(url) {
    return !!url.match(/^(|http(s?):\/\/)(.*\.)?reddit.com(\/.*|$)/gim);
}

function getNewUrl(url) {
    return 'https://farside.link/redlib' + url.split('reddit.com').pop();
}

if (isProperTargetPage(window.location.href)) {
    const newUrl = getNewUrl(window.location.href)
    location.replace(newUrl);
}