Greasy Fork is available in English.

大人的Greasy Fork

访问匿名不可用内容时跳转至sleazyfork,未登录状态下尝试在sleazyfork查找内容后合并至greasyfork | Merge sleazyfork results into greasyfork when the script is no longer anonymously available

Versione datata 08/10/2016. Vedi la nuova versione l'ultima versione.

// ==UserScript==
// @name         大人的Greasy Fork
// @namespace    hoothin
// @version      0.1
// @description  访问匿名不可用内容时跳转至sleazyfork,未登录状态下尝试在sleazyfork查找内容后合并至greasyfork | Merge sleazyfork results into greasyfork when the script is no longer anonymously available
// @author       hoothin
// @match        http*://greasyfork.org/*
// @match        http*://www.greasyfork.org/*
// @grant        GM_xmlhttpRequest
// ==/UserScript==

(function() {
    'use strict';
    if(document.querySelector('span.sign-in-link')){
        if(/scripts\/search/.test(location.href)){
            GM_xmlhttpRequest({
                method: 'GET',
                url: location.href.replace(/:([^\.]+\.)?greasyfork\.org/,":$1sleazyfork\.org"),
                onload: function(result) {
                    var doc = null;
                    try {
                        doc = document.implementation.createHTMLDocument('');
                        doc.documentElement.innerHTML = result.responseText;
                    }
                    catch (e) {
                        console.log('parse error');
                    }
                    if (!doc) {
                        return;
                    }
                    var ml = document.querySelector('#browse-script-list');
                    var l = doc.querySelector('#browse-script-list');
                    if (l) {
                        var scs=l.querySelectorAll("li");
                        if(scs){
                            for(var sc of scs){
                                if(!ml.querySelector("li[data-script-id='"+sc.getAttribute("data-script-id")+"']")){
                                    ml.appendChild(sc);
                                }
                            }
                        }
                    }
                },
                onerror: function(e) {
                    console.log(e);
                }
            });
        }else if(/scripts\/\d+/.test(location.href)){
            if(!document.querySelector("#script-info")){
                location.href=location.href.replace(/:([^\.]+\.)?greasyfork\.org/,":$1sleazyfork\.org");
            }
        }
    }
})();