::GOG Links::

Adds links for GOG store to gameplay videos without youtubers comments, direct search on Torrminatorr or cs.rin.ru for free clean download.

ही स्क्रिप्ट इंस्टॉल करण्यासाठी तुम्हाला Tampermonkey, Greasemonkey किंवा Violentmonkey यासारखे एक्स्टेंशन इंस्टॉल करावे लागेल.

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

ही स्क्रिप्ट इंस्टॉल करण्यासाठी तुम्हाला Tampermonkey किंवा Violentmonkey यासारखे एक्स्टेंशन इंस्टॉल करावे लागेल..

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

ही स्क्रिप्ट इंस्टॉल करण्यासाठी तुम्हाला Tampermonkey यासारखे एक्स्टेंशन इंस्टॉल करावे लागेल..

ही स्क्रिप्ट इंस्टॉल करण्यासाठी तुम्हाला एक युझर स्क्रिप्ट व्यवस्थापक एक्स्टेंशन इंस्टॉल करावे लागेल.

(माझ्याकडे आधीच युझर स्क्रिप्ट व्यवस्थापक आहे, मला इंस्टॉल करू द्या!)

ही स्टाईल इंस्टॉल करण्यासाठी तुम्हाला Stylus सारखे एक्स्टेंशन इंस्टॉल करावे लागेल.

ही स्टाईल इंस्टॉल करण्यासाठी तुम्हाला Stylus सारखे एक्स्टेंशन इंस्टॉल करावे लागेल.

ही स्टाईल इंस्टॉल करण्यासाठी तुम्हाला Stylus सारखे एक्स्टेंशन इंस्टॉल करावे लागेल.

ही स्टाईल इंस्टॉल करण्यासाठी तुम्हाला एक युझर स्टाईल व्यवस्थापक इंस्टॉल करावे लागेल.

ही स्टाईल इंस्टॉल करण्यासाठी तुम्हाला एक युझर स्टाईल व्यवस्थापक इंस्टॉल करावे लागेल.

ही स्टाईल इंस्टॉल करण्यासाठी तुम्हाला एक युझर स्टाईल व्यवस्थापक इंस्टॉल करावे लागेल.

(माझ्याकडे आधीच युझर स्टाईल व्यवस्थापक आहे, मला इंस्टॉल करू द्या!)

// ==UserScript==
// @name         ::GOG Links::
// @namespace    masterofobzene
// @author       masterofobzene
// @version      2.1
// @description  Adds links for GOG store to gameplay videos without youtubers comments, direct search on Torrminatorr or cs.rin.ru for free clean download.
// @require      https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js
// @match        *://www.gog.com/*/game/*
// @homepage     https://github.com/masterofobzene/UserScriptRepo
// @icon         https://www.gog.com/favicon.ico
// @run-at       document-end
// @grant        none
// @license      GNU GPLv3
// ==/UserScript==

var pirateLinks = [
    {
        url: "https://forum.torrminatorr.com/search.php?keywords=",
        urlSpecial: "",
        title: "Search on Torrminatorr"
    },
    {
        url: "https://cs.rin.ru/forum/search.php?keywords=",
        urlSpecial: "",
        title: "Search on cs.rin.ru (steam version)"
    },
    {
        url: "https://www.youtube.com/results?search_query=",
        urlSpecial: " gameplay no commentary",
        title: "Gameplay Video"
    }
];

var storePages = [
    {
        // Matches any two-letter language code in the URL
        url: /^https:\/\/www\.gog\.com\/[a-z]{2}\/game\//,
        title: "GOG"
    }
];

var storePageResult = "";

storePages.forEach((e) => {
    if (e.url.test(document.URL)) {
        storePageResult = e.title;
    }
});

console.log("Domain Match: ", storePageResult);

var appName = "";

switch (storePageResult) {
    case "GOG":
        appName = document.getElementsByClassName("productcard-basics__title")[0].textContent;
        pirateLinks.forEach((e) => {
            $("button.cart-button")[0].parentElement.parentElement.append(
                rigGOG(e.url + encodeURIComponent(appName) + e.urlSpecial, e.title)
            );
        });
        break;
}

function rigGOG(href, innerHTML) {
    let element = document.createElement("a");
    element.target = "_blank";
    element.style = "margin: 5px 0 5px 0 !important; padding: 5px 10px 5px 10px;";
    element.classList.add("button", "button--big", "cart-button", "ng-scope");
    element.href = href;
    element.innerHTML = innerHTML;
    return element;
}