Redirect remover

Bypass redirected links.

Versione datata 30/04/2015. Vedi la nuova versione l'ultima versione.

// ==UserScript==
// @name         Redirect remover
// @version      1.6.5
// @description  Bypass redirected links.
// @namespace    idmresettrial
// @author       idmresettrial
// @run-at       document-end
// @require      http://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js
// @grant        none

// Website list

// @include       *
// @exclude       /https{0,1}:\/\/.*(google|gmail|facebook)\.com\/.*/

// End list


// ==/UserScript==

this.$ = this.jQuery = jQuery.noConflict(true);

// Do not run on frames or iframes
if (window.top !== window.self) {
    return;
}

document.addEventListener("DOMContentLoaded", function() {

    site = window.location.hostname;

    switch (site)
    {

        case "vozforums.com":
        case "sinhvienit.net":
        case "phienbanmoi.com":
        case "forum.vietdesigner.net":
        case "www.webtretho.com":

            {
                $('a').each(function() {

                    url = unescape($(this).attr('href'));
                    if (site === "forum.vietdesigner.net") url = unescape(url);

                    redirect = /[?=]http/i;
                    if (redirect.test(url)) {
                        $(this).attr('href',url.replace(/^.+[?=]http/i,"http"));
                    }

                });

                break;
            }

        case "adf.ly":
        case "q.gs":
        case "chathu.apkmania.co":

            {

                url="";
                if (window.ysmm)
                {
                    ysmm = window.ysmm;
                    url0 = ""; url1 = "";
                    for (i=0;i<ysmm.length;i++)
                    {
                        if (i%2===0)
                        {
                            url0 +=ysmm.charAt(i);
                            url1 +=ysmm.charAt(ysmm.length-1-i);
                        }
                    }
                    url = window.atob(url0 + url1);
                    url = url.substring(2,url.length);
                }
                if (url.length>0)
                {
                    window.onbeforeunload = null;
                    window.onunload = null;
                    gogogo(url);
                }

                break;
            }

        case "www.oni.vn":
            {
                domain = window.location.protocol + "//" + window.location.host + '/';
                $.ajax({
                    type: "GET",
                    url: domain+"click.html",
                    data: $('html').html().match(/code=([^"]+)/i)[0],
                    contentType: "application/json; charset=utf-8",
                    success: function (html) {
                        url = html;
                        gogogo(url);
                    }
                });  
                break;
            }

        case "ouo.io":
            {
                url = $('a#btn-main').attr('href');
                gogogo(url);
                break;
            }

        case "acer-a500.ru":
        case "vegaviet.com":

            {
                $('a').each(function() {

                    url = unescape($(this).attr('href'));
                    redirect = {"acer-a500.ru":"http://acer-a500.ru/engine/redir/index/leech_out.php?a:","vegaviet.com":'http://vegaviet.com/redirect/?to='};

                    if (url.indexOf(redirect[site]) === 0) {
                        $(this).attr('href',window.atob(url.substring(redirect[site].length,url.length)));
                    }

                });

                break;
            }

        case "www.fshare.vn":
            {
                csrf = $('input[name="fs_csrf"]');
                if (csrf.length) {
                    csrf = csrf.attr('value');
                    data = {speed: 'slow', fs_csrf: csrf};
                    $.post('/download/index', data).success(function(data){
                        $('<button class="btn-red free-btn download_btn" style="margin-bottom: 15px; display:none;" id="rrdownload"><div>Tải ngay (Redirect remover)</div></button>').insertBefore('button.download_btn');
                        $('#rrdownload').fadeIn();
                        $('#rrdownload').click(function() {window.location.replace(data.url);});
                    });
                }
                break;
            }

        case "muare.vn":
            {
                $('a.ProxyLink').removeClass('ProxyLink');
                break;
            }


        default:
            {
                if ( $('body').html().match(/london|hotel|deal/gi).length > 5 ) {
                    selector = {"baomoitoday.com":'div[align="center"][style="padding:5px"] a', "travelworld24h.com":"div.cms-content a", 
                                "default":"center a, div#news_main a"};
                    if (typeof selector[site] === "undefined") site = "default";
                    url = $(selector[site]).attr('href');
                    gogogo(url);
                }
                break;
            }


    }

});

function gogogo(url) {
    if (typeof url !== 'undefined') {
        page  = '<html><head><title>'+url+'</title></head><body style="margin-topp:100px;">';
        page += '<center><b>Đang chuyển hướng đến trang gốc</b><br><a style="text-decoration:none; color:#23497C;" href="'+url+'">'+url+'</a><br>';
        page += '</center>';
        page += '</body></html>';
        
        $('html').html(page);
        window.location.replace(url);
        setTimeout(function() {
            $('body').html('');
        }, 2000);
    }
}