Remove Redundant URL Search Parameters

Remove Redundant URL Search Parameters like fbclid

За да инсталирате този скрипт, трябва да имате инсталирано разширение като Tampermonkey, Greasemonkey или Violentmonkey.

You will need to install an extension such as Tampermonkey to install this script.

За да инсталирате този скрипт, трябва да имате инсталирано разширение като Tampermonkey или Violentmonkey.

За да инсталирате този скрипт, трябва да имате инсталирано разширение като Tampermonkey или Userscripts.

За да инсталирате скрипта, трябва да инсталирате разширение като Tampermonkey.

За да инсталирате този скрипт, трябва да имате инсталиран скриптов мениджър.

(Вече имам скриптов мениджър, искам да го инсталирам!)

За да инсталирате този стил, трябва да инсталирате разширение като Stylus.

За да инсталирате този стил, трябва да инсталирате разширение като Stylus.

За да инсталирате този стил, трябва да инсталирате разширение като Stylus.

За да инсталирате този стил, трябва да имате инсталиран мениджър на потребителски стилове.

За да инсталирате този стил, трябва да имате инсталиран мениджър на потребителски стилове.

За да инсталирате този стил, трябва да имате инсталиран мениджър на потребителски стилове.

(Вече имам инсталиран мениджър на стиловете, искам да го инсталирам!)

// ==UserScript==
// @name         Remove Redundant URL Search Parameters
// @namespace    https://github.com/livinginpurple
// @version      2019.08.03.14
// @description  Remove Redundant URL Search Parameters like fbclid
// @author       livinginpurple
// @license      WTFPL
// @exclude      https://*.google.com/*
// @exclude      https://*.facebook.com/*
// @exclude      https://www.plurk.com/*
// @include 	 *
// @grant        none
// @run-at       document-start
// ==/UserScript==

(function() {
    'use strict';
    console.log(GM_info.script.name + " is loading.");;
    let TotalReplaceUri = location.href.split("?")[0];
    let FirstSearchParameter = location.search.split('&')[0];
    let PartialReplaceUri = TotalReplaceUri + FirstSearchParameter;
    let keywords = ["fbclid", "jobsource", "from=fb", "f=cs", "gclid", "utm_", "from=udn"];

    keywords.forEach(element => {
        if (location.href.includes(element)) {
            ModifyUrl(TotalReplaceUri);
        }
    });

    if (PartialReplaceUri.includes("fbclid") && !FirstSearchParameter.includes("fbclid")) {
        ModifyUrl(PartialReplaceUri);
    }

    function ModifyUrl(replaceUri) {
        // 修改網址,且不留下歷史紀錄
        window.history.replaceState({},
            window.title,
            replaceUri
        );
    }
    console.log(GM_info.script.name + " is running.");
})(document);