2019-01-15 02:42:23 +01:00
//If you want to insert your own bypass, please search for "Insertion point"
2018-07-02 12:57:42 +02:00
if ( document instanceof HTMLDocument )
2018-03-24 19:30:18 +01:00
{
2019-01-20 20:11:09 +01:00
let brws = ( typeof browser == "undefined" ? chrome : browser )
2019-01-21 09:40:12 +01:00
brws . runtime . sendMessage ( { } , res => {
if ( ! res . enabled )
2019-01-11 19:28:26 +01:00
{
2019-01-21 09:40:12 +01:00
return
2019-01-11 19:28:26 +01:00
}
2018-11-11 15:54:54 +01:00
let script = document . createElement ( "script" )
2019-02-01 04:39:53 +01:00
script . innerHTML = ` (()=>{
2019-01-21 09:40:12 +01:00
let crowdEnabled = ` +(res.crowdEnabled ? "true" : "false")+ ` ,
2019-01-17 16:04:45 +01:00
ODP = ( t , p , o ) => { try { Object . defineProperty ( t , p , o ) } catch ( e ) { console . trace ( "[Universal Bypass] Couldn't define" , p ) } } ,
2018-12-08 13:33:32 +01:00
//Copying eval, etc. to prevent issues with other extensions, such as uBlockOrigin. Also, note that this is the page level, so there are no security risks in using eval.
ev = eval , sT = setTimeout , sI = setInterval ,
2019-02-02 22:00:42 +01:00
isGoodLink = link => {
2019-02-24 17:37:22 +01:00
if ( ! link || link == location . href || link . substr ( 0 , 6 ) == "about:" || link . substr ( 0 , 11 ) == "javascript:" )
2019-02-02 22:00:42 +01:00
{
return false
}
try
{
new URL ( link )
}
catch ( e )
{
return false
}
return true
} ,
2018-12-30 12:25:26 +01:00
navigated = false ,
unsafelyNavigate = target => {
if ( navigated )
return
navigated = true
location . href = "https://universal-bypass.org/before-navigate?target=" + encodeURIComponent ( target )
//The background script will intercept the request and redirect to html/before-navigate.html or to the target depending on the user's settings.
} ,
safelyNavigate = target => {
2018-12-17 18:49:04 +01:00
if ( navigated || ! isGoodLink ( target ) )
2018-12-30 12:25:26 +01:00
{
2018-12-17 18:49:04 +01:00
return false
2018-12-30 12:25:26 +01:00
}
2018-12-17 18:49:04 +01:00
bypassed = true
let url
try { url = new URL ( target ) } catch ( e ) { }
if ( ! url || ! url . hash )
2018-12-30 12:25:26 +01:00
{
2018-12-17 18:49:04 +01:00
target += location . hash
2018-12-30 12:25:26 +01:00
}
2018-12-17 18:49:04 +01:00
window . onbeforeunload = null
2018-12-30 12:25:26 +01:00
unsafelyNavigate ( target )
2018-12-17 18:49:04 +01:00
return true
2018-07-02 12:57:42 +02:00
} ,
2018-12-30 12:25:26 +01:00
bypassed = false ,
finish = ( ) => {
2018-10-08 16:26:22 +02:00
bypassed = true
document . documentElement . setAttribute ( "data-universal-bypass-stop-watching" , "" )
} ,
2018-12-05 09:04:17 +01:00
domainBypass = ( domain , f ) => {
2018-07-02 12:57:42 +02:00
if ( ! bypassed && ( location . hostname == domain || location . hostname . substr ( location . hostname . length - ( domain . length + 1 ) ) == "." + domain ) )
{
2018-12-05 09:04:17 +01:00
f ( )
2018-12-30 12:25:26 +01:00
finish ( )
2018-07-02 12:57:42 +02:00
}
} ,
2018-12-05 09:04:17 +01:00
hrefBypass = ( regex , f ) => {
if ( ! bypassed && regex . test ( location . href ) )
2018-07-02 12:57:42 +02:00
{
2018-12-05 09:04:17 +01:00
f ( )
2018-12-30 12:25:26 +01:00
finish ( )
2018-07-02 12:57:42 +02:00
}
} ,
2018-12-05 09:04:17 +01:00
ensureDomLoaded = f => {
2018-07-02 12:57:42 +02:00
if ( [ "interactive" , "complete" ] . indexOf ( document . readyState ) > - 1 )
2018-12-30 12:25:26 +01:00
{
2018-12-05 09:04:17 +01:00
f ( )
2018-12-30 12:25:26 +01:00
}
else
{
document . addEventListener ( "DOMContentLoaded" , ( ) => sT ( f , 1 ) )
}
2018-12-05 09:04:17 +01:00
} ,
2019-01-11 19:28:26 +01:00
crowdBypass = f => {
if ( crowdEnabled )
2018-12-30 12:25:26 +01:00
{
2019-01-11 19:28:26 +01:00
if ( location . href . substr ( location . href . length - 18 ) == "#ignoreCrowdBypass" )
{
document . querySelectorAll ( "form[action]" ) . forEach ( e => e . action += "#ignoreCrowdBypass" )
document . querySelectorAll ( "a[href]" ) . forEach ( e => e . href += "#ignoreCrowdBypass" )
history . pushState ( { } , document . querySelector ( "title" ) . textContent , location . href . substr ( 0 , location . href . length - 18 ) )
f ( )
}
else
{
2019-02-17 13:15:59 +01:00
document . documentElement . setAttribute ( "data-universal-bypass-crowd-query" , "" )
let iT = setInterval ( ( ) => {
if ( document . documentElement . hasAttribute ( "data-universal-bypass-crowd-queried" ) )
2019-01-11 19:28:26 +01:00
{
2019-02-17 13:15:59 +01:00
document . documentElement . removeAttribute ( "data-universal-bypass-crowd-queried" )
2019-01-11 19:28:26 +01:00
f ( )
}
2019-02-17 13:15:59 +01:00
} , 20 )
2018-10-07 21:33:44 +02:00
}
2018-10-02 19:31:00 +02:00
}
2019-01-11 19:28:26 +01:00
} ,
2019-01-11 23:23:44 +01:00
contributeAndNavigate = target => {
if ( ! navigated && isGoodLink ( target ) )
2018-10-07 21:33:44 +02:00
{
2019-01-11 23:23:44 +01:00
if ( crowdEnabled )
{
2019-02-17 13:15:59 +01:00
document . documentElement . setAttribute ( "data-universal-bypass-crowd-contribute" , target )
let iT = setInterval ( ( ) => {
if ( document . documentElement . hasAttribute ( "data-universal-bypass-crowd-contributed" ) )
2019-01-11 23:23:44 +01:00
{
2019-02-17 13:15:59 +01:00
document . documentElement . removeAttribute ( "data-universal-bypass-crowd-contributed" )
2019-01-11 23:23:44 +01:00
unsafelyNavigate ( target )
}
2019-02-17 13:15:59 +01:00
} , 20 )
2019-01-11 23:23:44 +01:00
}
else
2018-10-15 06:55:21 +02:00
{
2018-12-30 12:25:26 +01:00
unsafelyNavigate ( target )
2018-10-15 06:55:21 +02:00
}
}
2019-01-11 23:23:44 +01:00
} ,
2019-01-17 16:04:45 +01:00
domain = location . hostname
2018-10-15 06:55:21 +02:00
if ( domain . substr ( 0 , 4 ) == "www." )
2019-01-11 19:28:26 +01:00
{
2018-10-15 06:55:21 +02:00
domain = domain . substr ( 4 )
2019-01-11 19:28:26 +01:00
}
2018-12-05 09:04:17 +01:00
ODP ( window , "blurred" , {
2018-10-15 06:55:21 +02:00
value : false ,
writable : false
} )
2018-12-30 12:25:26 +01:00
//adf.ly
ODP ( window , "ysmm" ,
2018-03-26 10:37:43 +02:00
{
2018-07-08 17:18:00 +02:00
set : r => {
2018-09-25 03:07:47 +02:00
let a , m , I = "" , X = ""
for ( m = 0 ; m < r . length ; m ++ )
2018-12-30 12:25:26 +01:00
{
if ( m % 2 == 0 )
{
I += r . charAt ( m )
}
else
{
X = r . charAt ( m ) + X
}
}
2018-05-28 01:40:02 +02:00
r = I + X
2018-09-25 03:07:47 +02:00
a = r . split ( "" )
for ( m = 0 ; m < a . length ; m ++ )
2018-06-15 21:35:23 +02:00
{
2018-09-25 03:07:47 +02:00
if ( ! isNaN ( a [ m ] ) )
2018-07-08 17:18:00 +02:00
{
2018-09-25 03:07:47 +02:00
for ( var R = m + 1 ; R < a . length ; R ++ )
2018-07-08 17:18:00 +02:00
{
2018-09-25 03:07:47 +02:00
if ( ! isNaN ( a [ R ] ) )
2018-07-08 17:18:00 +02:00
{
2018-09-25 03:07:47 +02:00
let S = a [ m ] ^ a [ R ]
2018-12-30 12:25:26 +01:00
if ( S < 10 )
{
a [ m ] = S
}
m = R
2018-09-25 03:07:47 +02:00
R = a . length
2018-07-08 17:18:00 +02:00
}
}
}
2018-06-15 21:35:23 +02:00
}
2018-09-25 03:07:47 +02:00
r = a . join ( '' )
2018-12-30 12:25:26 +01:00
r = atob ( r )
2018-09-25 03:07:47 +02:00
r = r . substring ( r . length - ( r . length - 16 ) )
r = r . substring ( 0 , r . length - 16 )
2018-12-30 12:25:26 +01:00
safelyNavigate ( r )
2018-03-26 10:37:43 +02:00
}
2018-05-28 06:32:24 +02:00
} )
2018-06-06 05:55:27 +02:00
//LinkBucks
2018-06-16 08:09:24 +02:00
var actualInitLbjs
2018-12-05 09:04:17 +01:00
ODP ( window , "initLbjs" , {
2018-06-06 05:55:27 +02:00
set : ( _ ) => actualInitLbjs = _ ,
get : ( ) => ( a , p ) => {
2018-06-08 01:36:45 +02:00
p . Countdown --
2018-06-06 05:55:27 +02:00
actualInitLbjs ( a , p )
}
} )
2018-06-01 18:45:23 +02:00
//Safelink
2019-02-05 22:40:01 +01:00
let actual _safelink = forced _safelink = { counter : 0 , adblock : false }
2018-12-05 09:04:17 +01:00
ODP ( window , "safelink" ,
2018-06-01 18:45:23 +02:00
{
2018-07-08 17:18:00 +02:00
set : _ => {
2018-06-01 18:45:23 +02:00
ODP ( window , "blurred" , {
2018-07-02 12:57:42 +02:00
value : false ,
writable : false
2018-06-01 18:45:23 +02:00
} )
2018-12-27 06:45:40 +01:00
for ( let k in _ )
2018-12-30 12:25:26 +01:00
{
2018-06-01 18:45:23 +02:00
if ( forced _safelink [ k ] === undefined )
2018-12-30 12:25:26 +01:00
{
2018-12-27 06:45:40 +01:00
actual _safelink [ k ] = _ [ k ]
2018-12-30 12:25:26 +01:00
}
}
2018-06-01 18:45:23 +02:00
} ,
get : ( ) => actual _safelink
} )
for ( let key in forced _safelink )
{
ODP ( safelink , key ,
{
2018-07-02 12:57:42 +02:00
writable : false ,
2018-06-01 18:45:23 +02:00
value : forced _safelink [ key ]
} )
}
2018-07-01 00:15:57 +02:00
//YetiShare
2018-06-15 19:30:07 +02:00
let actual _web _root
2018-12-05 09:04:17 +01:00
ODP ( window , "WEB_ROOT" , {
2018-07-08 17:18:00 +02:00
set : v => {
2018-12-05 09:04:17 +01:00
ODP ( window , "seconds" , {
2018-06-15 19:30:07 +02:00
value : 0 ,
2018-07-02 12:57:42 +02:00
writable : false
2018-06-15 19:30:07 +02:00
} )
actual _web _root = v
} ,
get : ( ) => actual _web _root
} )
2019-01-11 19:28:26 +01:00
hrefBypass ( /ur\\.ly|urly\\.mobi/ , ( ) => {
2018-05-28 01:40:02 +02:00
if ( location . pathname . length > 2 && location . pathname . substr ( 0 , 6 ) != "/goii/" )
2018-07-02 12:57:42 +02:00
safelyNavigate ( "/goii/" + location . pathname . substr ( 2 ) + "?ref=" + location . hostname + location . pathname )
2018-05-28 01:40:02 +02:00
} )
2019-01-11 23:23:44 +01:00
hrefBypass ( / u n i v e r s a l - b y p a s s \ \ . o r g \ \ / f i r s t r u n / , ( ) = > {
location . href = "https://universal-bypass.org/firstrun?1"
} )
2018-07-02 12:57:42 +02:00
domainBypass ( "cshort.org" , ( ) => {
2018-12-05 09:04:17 +01:00
ODP ( window , "adblock" , {
2018-07-02 12:57:42 +02:00
value : false ,
writable : false
2018-05-28 01:40:02 +02:00
} )
2018-12-05 09:04:17 +01:00
ODP ( window , "i" , {
2018-05-28 01:40:02 +02:00
value : 0 ,
2018-07-02 12:57:42 +02:00
writable : false
2018-05-28 01:40:02 +02:00
} )
2018-07-02 12:57:42 +02:00
ensureDomLoaded ( ( ) =>
2018-03-26 10:37:43 +02:00
{
2018-06-15 21:35:23 +02:00
let lT = sI ( ( ) =>
2018-05-28 01:40:02 +02:00
{
if ( document . querySelector ( ".next[href]" ) )
{
clearInterval ( lT )
2018-07-02 12:57:42 +02:00
safelyNavigate ( atob ( atob ( document . querySelector ( ".next[href]" ) . getAttribute ( "href" ) ) ) )
2018-05-28 01:40:02 +02:00
}
} , 100 )
} )
} )
2018-07-02 12:57:42 +02:00
domainBypass ( "link.tl" , ( ) => {
2018-12-05 09:04:17 +01:00
ODP ( window , "countdown" , {
2018-05-28 01:40:02 +02:00
value : 0 ,
2018-07-02 12:57:42 +02:00
writable : false
2018-05-28 01:40:02 +02:00
} )
2018-06-15 21:35:23 +02:00
let lT = sI ( ( ) =>
2018-05-30 19:44:25 +02:00
{
if ( document . querySelector ( ".skip > .btn" ) )
2018-06-15 21:35:23 +02:00
{
2018-10-02 12:17:06 +02:00
clearInterval ( lT )
2018-05-30 19:44:25 +02:00
document . querySelector ( ".skip > .btn" ) . click ( )
2018-06-15 21:35:23 +02:00
}
2018-06-16 08:09:24 +02:00
} , 100 )
2018-05-28 01:40:02 +02:00
} )
2018-07-02 12:57:42 +02:00
domainBypass ( "onepiece-ex.com.br" , ( ) => {
2018-12-05 09:04:17 +01:00
ODP ( window , "seconds" , {
2018-05-29 19:11:25 +02:00
value : 1 ,
2018-07-02 12:57:42 +02:00
writable : false
2018-05-29 19:11:25 +02:00
} )
2018-06-15 21:35:23 +02:00
let lT = sI ( ( ) => {
2018-05-29 19:11:25 +02:00
if ( document . getElementById ( "continuar" ) )
{
2018-05-30 19:44:25 +02:00
clearInterval ( lT )
2018-07-02 12:57:42 +02:00
safelyNavigate ( document . getElementById ( "continuar" ) . href )
2018-05-29 19:11:25 +02:00
}
} , 100 )
} )
2018-07-02 12:57:42 +02:00
domainBypass ( "akoam.net" , ( ) => {
2018-12-05 09:04:17 +01:00
ODP ( window , "timer" , {
2018-05-30 19:44:25 +02:00
value : 0 ,
2018-07-02 12:57:42 +02:00
writable : false
2018-05-30 19:44:25 +02:00
} )
2018-06-15 21:35:23 +02:00
let lT = sI ( ( ) => {
2018-05-30 19:44:25 +02:00
if ( document . querySelector ( ".download_button" ) )
{
clearInterval ( lT )
2018-07-02 12:57:42 +02:00
safelyNavigate ( document . querySelector ( ".download_button" ) . href )
2018-05-30 19:44:25 +02:00
}
} , 100 )
} )
2019-01-11 19:28:26 +01:00
hrefBypass ( / 1 v \ \ . t o \ \ / t \ \ / . * / , ( ) = > {
2018-05-30 19:44:25 +02:00
location . pathname = location . pathname . split ( "/t/" ) . join ( "/saliendo/" )
} )
2018-07-02 12:57:42 +02:00
domainBypass ( "share-online.biz" , ( ) => {
2018-12-05 09:04:17 +01:00
ODP ( window , "wait" , {
2018-10-02 12:17:06 +02:00
set : s => 0 ,
2018-06-15 21:35:23 +02:00
get : ( ) => {
return 2
}
2018-06-01 18:45:23 +02:00
} )
} )
2019-01-11 19:28:26 +01:00
hrefBypass ( /sfile\\.(mobi|xyz)/ , ( ) => {
2018-12-05 09:04:17 +01:00
ODP ( window , "downloadButton" , {
2018-10-02 12:17:06 +02:00
set : b => {
2018-06-06 05:55:27 +02:00
if ( b && b . href )
2018-07-02 12:57:42 +02:00
safelyNavigate ( b . href )
2018-06-06 05:55:27 +02:00
}
} )
} )
2018-07-02 12:57:42 +02:00
domainBypass ( "mylink.zone" , ( ) => {
2018-12-05 09:04:17 +01:00
ODP ( window , "seconde" , {
2018-07-08 17:18:00 +02:00
set : _ => { } ,
2018-06-15 21:35:23 +02:00
get : ( ) => {
return - 1
}
2018-06-06 05:55:27 +02:00
} )
} )
2018-07-02 12:57:42 +02:00
domainBypass ( "sourceforge.net" , ( ) => {
var b = document . createElement ( "button" ) , d = false
2018-06-11 06:43:52 +02:00
b . className = "direct-download"
b . style . display = "none"
document . documentElement . appendChild ( b )
2018-12-05 09:04:17 +01:00
ODP ( window , "log" , {
2018-07-08 17:18:00 +02:00
value : m => {
2018-06-11 06:43:52 +02:00
console . log ( m )
if ( m == "triggering downloader:start" )
2018-07-02 12:57:42 +02:00
d = true
2018-06-11 06:43:52 +02:00
} ,
2018-07-02 12:57:42 +02:00
writable : false
2018-06-11 06:43:52 +02:00
} )
2018-07-02 12:57:42 +02:00
ensureDomLoaded ( ( ) => {
2018-06-15 21:35:23 +02:00
let bT = sI ( ( ) => {
2018-06-11 06:43:52 +02:00
if ( d )
clearInterval ( bT )
else b . click ( )
} , 100 )
} )
2019-01-11 19:28:26 +01:00
} )
domainBypass ( "bc.vc" , ( ) => {
window . setInterval = f => sI ( f , 800 )
crowdBypass ( ( ) => {
window . eval = c => {
let j = ev ( c )
if ( j . message && j . message . url )
2018-10-03 07:51:32 +02:00
{
2019-01-11 19:28:26 +01:00
contributeAndNavigate ( j . message . url )
return { }
2018-10-03 07:51:32 +02:00
}
2019-01-11 19:28:26 +01:00
return j
}
2018-06-15 21:35:23 +02:00
} )
2019-01-11 19:28:26 +01:00
let sT = setInterval ( ( ) => {
let a = document . querySelector ( ".skip_btt > #skip_btt" )
if ( a )
2018-12-30 12:25:26 +01:00
{
2019-01-11 19:28:26 +01:00
clearInterval ( sT )
a . click ( )
}
} , 50 )
} )
domainBypass ( "shortly.xyz" , ( ) => {
if ( location . pathname . substr ( 0 , 3 ) == "/r/" )
{
document . getElementById = ( ) => ( { submit : ( ) => {
let f = document . querySelector ( "form" )
f . action = "/link#" + document . querySelector ( "input[name='id']" ) . value
f . submit ( )
} } )
}
else if ( location . pathname == "/link" )
{
let xhr = new XMLHttpRequest ( )
xhr . onreadystatechange = ( ) => {
if ( xhr . readyState == 4 && xhr . status == 200 )
safelyNavigate ( xhr . responseText )
2018-12-30 12:25:26 +01:00
}
2019-01-11 19:28:26 +01:00
xhr . open ( "POST" , "https://www.shortly.xyz/getlink.php" , true )
xhr . setRequestHeader ( "Content-type" , "application/x-www-form-urlencoded" )
xhr . setRequestHeader ( "X-Requested-With" , "XMLHttpRequest" )
xhr . send ( "id=" + location . hash . replace ( "#" , "" ) )
}
} )
2019-02-23 21:27:18 +01:00
hrefBypass ( / l i n k a s m \ \ . c o m | f i r e f a u c e t \ \ . w i n \ \ / l \ \ / | e m u l a t o r \ \ . g a m e s \ \ / d o w n l o a d \ \ . p h p | 2 s p e e d \ \ . n e t \ \ / f i l e \ \ / / , ( ) = > {
2019-01-22 19:39:15 +01:00
window . setInterval = f => sI ( f , 1 )
2019-01-11 19:28:26 +01:00
} )
2019-02-12 14:45:19 +01:00
hrefBypass ( /datei\\.to|id-share19\\.com/ , ( ) => {
2019-02-02 00:00:06 +01:00
window . setTimeout = f => sT ( f , 1 )
} )
2019-01-14 21:28:23 +01:00
//Insertion point 1 — insert bypasses running before the DOM is loaded above this comment
2019-01-11 19:28:26 +01:00
if ( bypassed )
{
return
}
ensureDomLoaded ( ( ) => {
domainBypass ( "adfoc.us" , ( ) => {
let b = document . querySelector ( ".skip[href]" )
if ( b )
safelyNavigate ( b . href )
} )
domainBypass ( "sub2unlock.com" , ( ) => {
if ( location . pathname . substr ( 0 , 10 ) == "/link/get/" )
2018-06-19 13:35:38 +02:00
{
2019-01-11 19:28:26 +01:00
safelyNavigate ( document . getElementById ( "link" ) . href )
}
else
{
let f = document . getElementById ( "getLinkNow" )
if ( f )
document . getElementById ( "getLinkNow" ) . submit ( )
2018-06-19 13:35:38 +02:00
}
} )
2019-01-11 19:28:26 +01:00
domainBypass ( "srt.am" , ( ) => {
if ( document . querySelector ( ".skip-container" ) )
{
let f = document . createElement ( "form" )
f . method = "POST"
f . innerHTML = '<input type="hidden" name="_image" value="Continue">'
f = document . documentElement . appendChild ( f )
f . submit ( )
}
2018-12-03 04:37:15 +01:00
} )
2019-01-11 19:28:26 +01:00
domainBypass ( "admy.link" , ( ) => {
let f = document . querySelector ( ".edit_link" )
if ( f )
2019-02-02 22:00:42 +01:00
{
2019-01-11 19:28:26 +01:00
f . submit ( )
2019-02-02 22:00:42 +01:00
}
2018-12-17 18:49:04 +01:00
} )
2019-01-11 19:28:26 +01:00
domainBypass ( "ysear.ch" , ( ) => {
let b = document . querySelector ( "#NextVideo[href]" )
if ( b )
2019-02-02 22:00:42 +01:00
{
2019-01-11 19:28:26 +01:00
safelyNavigate ( b . href )
2019-02-02 22:00:42 +01:00
}
2019-01-11 19:28:26 +01:00
} )
2019-02-05 22:40:01 +01:00
hrefBypass ( /1ink\\.(cc|live)/ , ( ) => {
2019-01-11 19:28:26 +01:00
if ( typeof SkipAd == "function" )
2019-02-02 22:00:42 +01:00
{
2019-01-11 19:28:26 +01:00
SkipAd ( )
2019-02-02 22:00:42 +01:00
}
2019-01-11 19:28:26 +01:00
} )
domainBypass ( "losstor.com" , ( ) => {
let b = document . getElementById ( "re_link" )
if ( b )
2018-12-05 09:04:17 +01:00
{
2019-01-11 19:28:26 +01:00
window . open = safelyNavigate
b . click ( )
2018-12-05 09:04:17 +01:00
}
2019-01-11 19:28:26 +01:00
} )
domainBypass ( "fshare.vn" , ( ) => {
if ( "$" in window )
{
let f = $ ( "#form-download" )
if ( f . length )
2018-10-07 21:33:44 +02:00
{
2019-01-11 19:28:26 +01:00
$ . ajax ( {
"url" : f . attr ( "action" ) ,
"type" : "POST" ,
"data" : f . serialize ( )
} ) . done ( data => safelyNavigate ( data . url ) )
2018-10-07 21:33:44 +02:00
}
2019-01-11 19:28:26 +01:00
}
} )
domainBypass ( "dwindly.io" , ( ) => {
let b = document . getElementById ( "btd1" )
if ( b )
{
window . open = ( ) => { }
b . click ( )
}
else
{
b = document . getElementById ( "btd" )
2018-10-07 21:33:44 +02:00
if ( b )
{
window . open = safelyNavigate
2019-01-11 19:28:26 +01:00
ev ( "(" + b . onclick . toString ( ) . split ( ";" ) [ 0 ] + "})()" )
2018-10-07 21:33:44 +02:00
}
2019-01-11 19:28:26 +01:00
}
} )
domainBypass ( "bluemediafiles.com" , ( ) => {
if ( typeof FinishMessage == "string" && FinishMessage . indexOf ( "<a href=" ) > - 1 )
{
//The FinishMessage string contains the HTML anchor element needed to get to the destination so we just replace the entire website with it because we don't need any of the other content anymore.
document . write ( FinishMessage )
document . querySelector ( "a" ) . click ( )
}
} )
domainBypass ( "complete2unlock.com" , ( ) => {
let bT = setInterval ( ( ) => {
let b = document . getElementById ( "link-success-button" ) , es = document . querySelectorAll ( ".unlockpanel" )
if ( b && es . length > 0 )
2018-06-14 06:41:51 +02:00
{
2019-01-11 19:28:26 +01:00
clearInterval ( bT )
2018-10-07 21:33:44 +02:00
window . open = ( ) => { }
2019-01-11 19:28:26 +01:00
es . forEach ( e => e . dispatchEvent ( new MouseEvent ( "click" ) ) )
let dT = setInterval ( ( ) => {
if ( ! b . hasAttribute ( "disabled" ) )
{
clearInterval ( dT )
b . dispatchEvent ( new MouseEvent ( "click" ) )
}
} , 100 )
2018-07-06 03:32:10 +02:00
}
2019-01-11 19:28:26 +01:00
} , 300 )
setInterval ( ( ) => clearInterval ( bT ) , 10000 )
} )
domainBypass ( "hidelink.club" , ( ) => {
if ( hash )
safelyNavigate ( decodeURIComponent ( atob ( hash ) ) . replace ( "%23" , "#" ) )
} )
domainBypass ( "won.pe" , ( ) =>
{
if ( document . querySelector ( ".captcha_loader .progress-bar" ) )
document . querySelector ( ".captcha_loader .progress-bar" ) . setAttribute ( "aria-valuenow" , "100" )
} )
domainBypass ( "stealive.club" , ( ) => {
if ( document . getElementById ( "counter" ) )
document . getElementById ( "counter" ) . innerHTML = "0"
} )
hrefBypass ( /((binerfile|pafpaf)\\.info)|(kurosafety\\.menantisenja\\.com)/ , ( ) => { //KuroSafe
let b = document . querySelector ( "#mybutton[href]" )
if ( b )
safelyNavigate ( b . href )
} )
domainBypass ( "gotoo.loncat.in" , ( ) => {
let a = document . querySelector ( "a[href^='http://gotoo.loncat.in/go.php?open=']" )
if ( a )
safelyNavigate ( a . href )
} )
domainBypass ( "idnation.net" , ( ) => {
let b = document . querySelector ( "#linko[href]" )
if ( b )
safelyNavigate ( b . href )
} )
domainBypass ( "mazika2day.com" , ( ) => {
let b = document . querySelector ( ".linkbtn[href]" )
if ( b )
safelyNavigate ( b . href )
} )
domainBypass ( "ux9.de" , ( ) => {
let m = document . querySelector ( "meta[http-equiv='refresh'][content]" )
2019-02-11 09:24:36 +01:00
if ( m && m . content . indexOf ( ";url=http" ) )
{
safelyNavigate ( m . content . split ( ";url=" ) [ 1 ] )
}
2019-01-11 19:28:26 +01:00
} )
domainBypass ( "telolet.in" , ( ) => {
let b = document . querySelector ( "a#skip[href]" )
if ( ! b )
b = document . querySelector ( ".redirect_url > a[href]" )
if ( b )
safelyNavigate ( b . href )
} )
domainBypass ( "vipdirect.cc" , ( ) => {
if ( typeof ab == "number" && typeof asdf == "function" )
2018-10-07 21:33:44 +02:00
{
2019-01-11 19:28:26 +01:00
ab = 5
window . open = safelyNavigate
asdf ( )
}
} )
domainBypass ( "rapidcrypt.net" , ( ) => {
let b = document . querySelector ( ".push_button.blue[href]" )
if ( b )
safelyNavigate ( b . href )
} )
domainBypass ( "shrink-service.it" , ( ) => {
if ( typeof $ == "function" && typeof $ . ajax == "function" && typeof screenApi == "function" )
{
let _a = $ . ajax
$ . ajax = a => ( a . data && a . data . set _one ? safelyNavigate ( atob ( a . data . set _one ) ) : _a ( a ) )
screenApi ( )
}
} )
domainBypass ( "rom.io" , ( ) => crowdBypass ( ( ) => {
let cT = setInterval ( ( ) => {
let a = document . querySelector ( "a.final-button[href]" )
if ( a && isGoodLink ( a . href ) )
2018-10-09 16:50:04 +02:00
{
2019-01-11 19:28:26 +01:00
clearInterval ( cT )
a . parentNode . removeChild ( a )
contributeAndNavigate ( a . href )
2018-10-09 16:50:04 +02:00
}
2019-01-11 19:28:26 +01:00
} , 50 )
} ) )
domainBypass ( "show.co" , ( ) => {
let s = document . getElementById ( "show-campaign-data" )
if ( s )
{
let d = JSON . parse ( s . textContent )
if ( d && "title" in d && "unlockable" in d )
2018-12-08 13:33:32 +01:00
{
2019-01-11 19:28:26 +01:00
document . write ( "<body></body>" )
if ( "title" in d )
[ "title" , "h1" ] . forEach ( t => {
let e = document . createElement ( t )
e . textContent = d . title
document . body . appendChild ( e )
} )
2018-12-08 13:33:32 +01:00
if ( "message" in d . unlockable )
{
let p = document . createElement ( "p" )
p . textContent = d . unlockable . message
document . body . appendChild ( p )
}
if ( "redirect" in d . unlockable && "url" in d . unlockable . redirect )
{
let p = document . createElement ( "p" ) , a = document . createElement ( "a" )
a . textContent = a . href = d . unlockable . redirect . url
p . appendChild ( a )
document . body . appendChild ( p )
}
stop ( )
}
}
} )
2019-01-14 21:28:23 +01:00
domainBypass ( "vcrypt.net" , ( ) => {
if ( document . querySelector ( ".btncontinue" ) )
{
document . querySelector ( "form" ) . submit ( )
}
} )
domainBypass ( "runtyurl.com" , ( ) => {
let b = document . getElementById ( "go_next" )
2019-01-15 02:42:23 +01:00
if ( b && isGoodLink ( b . href ) )
2019-01-14 21:28:23 +01:00
{
location . href = b . href
}
else
{
b = document . getElementById ( "download" )
if ( b )
{
safelyNavigate ( b . href )
}
}
} )
2019-01-15 02:42:23 +01:00
hrefBypass ( / 4 s n i p \ \ . p w \ \ / o u t \ \ / / , ( ) = > {
let f = document . querySelector ( "form[action^='../out2/']" )
f . setAttribute ( "action" , f . getAttribute ( "action" ) . replace ( "../out2/" , "../outlink/" ) )
f . submit ( )
} )
2019-02-01 23:59:27 +01:00
domainBypass ( "douploads.com" , ( ) => {
if ( document . querySelectorAll ( ".seconds" ) . length == 1 )
document . querySelector ( ".seconds" ) . textContent = "1"
} )
2019-02-02 19:56:43 +01:00
domainBypass ( "elsfile.org" , ( ) => {
let form = document . createElement ( "form" )
form . method = "POST"
form . innerHTML = '<input type="hidden" name="op" value="download1"><input type="hidden" name="usr_login" value="C"><input type="hidden" name="id" value="' + location . pathname . toString ( ) . substr ( 1 ) + '"><input type="hidden" name="fname" value="' + document . querySelectorAll ( "div#container > div > div > table > tbody > tr > td" ) [ 2 ] . textContent + '"><input type="hidden" name="referer" value="q"><input type="hidden" name="method_free" value="Free Download">'
form = document . documentElement . appendChild ( form )
form . submit ( )
return finish ( )
} )
2019-02-02 22:00:42 +01:00
domainBypass ( "goou.in" , ( ) => {
let a = document . querySelector ( "div#download_link > a#download[href]" )
if ( a )
{
safelyNavigate ( a . href )
}
} )
domainBypass ( "skinnycat.org" , ( ) => {
let a = document . querySelector ( "a.redirect[href]" )
if ( a )
{
safelyNavigate ( a . href )
}
} )
domainBypass ( "ryn.cc" , ( ) => {
if ( typeof countdown == "function" )
{
document . write ( '<div id="link"><p id="timer">0</p></div>' )
countdown ( )
safelyNavigate ( document . querySelector ( "#link > a" ) . href )
}
} )
2019-01-14 21:28:23 +01:00
//Insertion point 2 — insert bypasses running after the DOM is loaded above this comment
2018-10-07 21:33:44 +02:00
if ( bypassed )
2019-01-14 21:28:23 +01:00
{
2018-10-07 21:33:44 +02:00
return
2019-01-14 21:28:23 +01:00
}
2019-01-04 17:26:19 +01:00
//Adf.ly "Locked" Page
if ( location . pathname == "/ad/locked" && document . getElementById ( "countdown" ) && document . querySelector ( "a" ) . textContent == "Click here to continue" )
{
let wT = setInterval ( ( ) => {
if ( document . getElementById ( "countdown" ) . textContent == "0" )
{
clearInterval ( wT )
document . querySelector ( "a" ) . click ( )
}
} , 100 )
}
//Adf.ly Pre-Redirect Page
2018-10-07 21:33:44 +02:00
if ( location . pathname . substr ( 0 , 13 ) == "/redirecting/" && document . querySelector ( "p[style]" ) . textContent == "For your safety, never enter your password unless you're on the real Adf.ly site." )
{
let a = document . querySelector ( "a[href]" )
if ( a )
2018-12-30 12:25:26 +01:00
{
2018-10-07 21:33:44 +02:00
safelyNavigate ( a . href )
2019-01-11 19:28:26 +01:00
return finish ( )
2018-12-30 12:25:26 +01:00
}
2018-10-07 21:33:44 +02:00
}
2019-01-01 18:43:20 +01:00
//SafelinkU
if ( typeof app _vars == "object" && document . querySelector ( "b[style='color: #3e66b3']" ) && document . querySelector ( "b[style='color: #3e66b3']" ) . textContent == "SafelinkU" )
2018-10-07 21:33:44 +02:00
{
2019-01-01 18:43:20 +01:00
window . setInterval = ( f ) => sI ( f , 10 )
2018-12-30 12:25:26 +01:00
return finish ( )
2018-10-07 21:33:44 +02:00
}
//GemPixel Premium URL Shortener
if ( typeof appurl != "undefined" && typeof token != "undefined" )
{
2018-12-08 13:33:32 +01:00
document . querySelectorAll ( "script" ) . forEach ( script => {
2018-10-07 21:33:44 +02:00
if ( script instanceof HTMLScriptElement )
2018-05-28 01:40:02 +02:00
{
2019-01-15 02:42:23 +01:00
let cont = script . textContent , start = cont . indexOf ( 'clearInterval(countdown);window.location="' )
if ( start > - 1 && cont . indexOf ( '";}count--;}, 1000)' ) > - 1 )
2018-06-01 18:45:23 +02:00
{
2019-01-15 02:42:23 +01:00
safelyNavigate ( cont . substr ( start + 42 ) . split ( '";}count--;}, 1000)' ) [ 0 ] )
2018-06-01 18:45:23 +02:00
}
2018-10-07 21:33:44 +02:00
}
2018-12-05 09:04:17 +01:00
} )
2018-10-07 21:33:44 +02:00
}
//Soralink Wordpress Plugin
if ( document . querySelector ( ".sorasubmit" ) )
{
document . querySelector ( ".sorasubmit" ) . click ( )
2018-12-30 12:25:26 +01:00
return finish ( )
2018-10-07 21:33:44 +02:00
}
if ( document . querySelector ( "#lanjut > #goes[href]" ) )
{
safelyNavigate ( document . querySelector ( "#lanjut > #goes[href]" ) . href )
2018-12-30 12:25:26 +01:00
return finish ( )
2018-10-07 21:33:44 +02:00
}
if ( document . getElementById ( "waktu" ) && document . getElementById ( "goto" ) )
{
safelyNavigate ( document . getElementById ( "goto" ) . href )
2018-12-30 12:25:26 +01:00
return finish ( )
2018-10-07 21:33:44 +02:00
}
if ( typeof bukalink == "function" && document . getElementById ( "bijil1" ) && document . getElementById ( "bijil2" ) ) //gosavelink.com
{
window . open = safelyNavigate
bukalink ( )
2018-12-30 12:25:26 +01:00
return finish ( )
2018-10-07 21:33:44 +02:00
}
if ( typeof changeLink == "function" )
{
let cLT = sI ( ( ) => {
if ( ( document . querySelectorAll ( "img#pleasewait" ) . length && document . querySelector ( ".wait" ) )
2019-02-02 22:00:42 +01:00
|| document . getElementById ( "showlink" )
2019-01-11 19:28:26 +01:00
|| document . getElementById ( "download" )
|| document . getElementsByTagName ( "style='margin-top:" ) . length
|| document . querySelector ( ".Visit_Link" ) //yametesenpai.xyz
|| document . getElementById ( "daplong" ) //converthinks.xyz
)
2018-07-16 06:23:28 +02:00
{
2018-10-07 21:33:44 +02:00
clearInterval ( cLT )
window . open = safelyNavigate
if ( typeof changeLink == "function" )
2019-02-02 22:00:42 +01:00
{
2018-10-07 21:33:44 +02:00
changeLink ( )
2019-02-02 22:00:42 +01:00
}
2018-10-07 21:33:44 +02:00
else if ( document . getElementById ( "link-download" ) ) //hightech.web.id
2019-02-02 22:00:42 +01:00
{
2018-10-07 21:33:44 +02:00
safelyNavigate ( document . getElementById ( "link-download" ) . href )
2019-02-02 22:00:42 +01:00
}
2018-07-16 06:23:28 +02:00
}
2018-10-07 21:33:44 +02:00
} , 100 )
}
//Safelink Wordpress Plugin
if ( document . querySelector ( ".wp-safelink-button" ) )
{
window . setInterval = f => sI ( f , 1 )
let lT = sI ( ( ) => {
if ( document . querySelector ( ".wp-safelink-button.wp-safelink-success-color" ) )
2018-07-18 22:07:19 +02:00
{
2018-10-07 21:33:44 +02:00
clearInterval ( lT )
window . open = safelyNavigate
document . querySelector ( ".wp-safelink-button.wp-safelink-success-color" ) . click ( )
2018-07-18 22:07:19 +02:00
}
2018-10-07 21:33:44 +02:00
} , 100 )
}
if ( document . getElementById ( "wpsafe-generate" ) && typeof wpsafegenerate == "function" )
{
2018-11-20 09:58:17 +01:00
let a = document . querySelector ( "#wpsafegenerate > #wpsafe-link > a[href]" )
if ( a )
2018-06-13 10:00:18 +02:00
{
2018-11-20 09:58:17 +01:00
safelyNavigate ( a . href )
2018-12-30 12:25:26 +01:00
return finish ( )
2018-06-15 21:35:23 +02:00
}
2018-11-20 09:58:17 +01:00
else
2018-06-15 21:35:23 +02:00
{
2018-12-17 18:49:04 +01:00
let s = new URLSearchParams ( location . search )
if ( s . has ( "go" ) )
2018-11-20 09:58:17 +01:00
{
2018-12-17 18:49:04 +01:00
if ( safelyNavigate ( atob ( s . get ( "go" ) ) ) )
2018-12-30 12:25:26 +01:00
return finish ( )
2018-11-20 09:58:17 +01:00
}
else if ( location . pathname . toString ( ) . substr ( 0 , 4 ) == "/go/" )
2018-10-18 01:30:48 +02:00
{
2018-11-20 09:58:17 +01:00
search = atob ( location . pathname . toString ( ) . substr ( 4 ) )
if ( search . substr ( 0 , 4 ) == "http" )
{
safelyNavigate ( search )
2018-12-30 12:25:26 +01:00
return finish ( )
2018-11-20 09:58:17 +01:00
}
2018-10-18 01:30:48 +02:00
}
2018-06-15 21:35:23 +02:00
}
2018-10-07 21:33:44 +02:00
}
2018-12-17 18:49:04 +01:00
if ( document . querySelector ( "input[type='hidden'][name='newwpsafelink'][value]" ) )
2018-10-18 01:30:48 +02:00
{
2018-12-17 18:49:04 +01:00
let s = new URLSearchParams ( location . search )
if ( s . has ( "go" ) )
{
safelyNavigate ( atob ( s . get ( "go" ) ) )
2018-12-30 12:25:26 +01:00
return finish ( )
2018-12-17 18:49:04 +01:00
}
2018-10-18 01:30:48 +02:00
}
2018-10-07 21:33:44 +02:00
//Other Templates
2018-11-02 20:53:45 +01:00
if ( document . querySelector ( ".timed-content-client_show_0_30_0" ) ) //technicoz.com
{
document . querySelector ( ".timed-content-client_show_0_30_0" ) . classList . remove ( "timed-content-client_show_0_30_0" )
2018-12-30 12:25:26 +01:00
return finish ( )
2018-11-02 20:53:45 +01:00
}
2018-10-26 08:23:07 +02:00
if ( document . getElementById ( "getlink" ) && document . getElementById ( "gotolink" ) && document . getElementById ( "timer" ) ) //tetewlink.me,vehicle-techno.cf
{
document . getElementById ( "gotolink" ) . removeAttribute ( "disabled" )
document . getElementById ( "gotolink" ) . click ( )
2018-12-30 12:25:26 +01:00
return finish ( )
2018-10-26 08:23:07 +02:00
}
2018-10-07 21:33:44 +02:00
if ( document . querySelector ( "#tungguyabro" ) && typeof WaktunyaBro == "number" ) //short.mangasave.me
{
WaktunyaBro = 0
setInterval ( ( ) => {
if ( document . querySelector ( "#tungguyabro a[href]" ) )
safelyNavigate ( document . querySelector ( "#tungguyabro a[href]" ) . href )
} , 100 )
2018-12-30 12:25:26 +01:00
return finish ( )
2018-10-07 21:33:44 +02:00
}
if ( document . querySelector ( "#yangDihilangkan > a" ) && document . querySelector ( "#downloadArea > .text-center" ) ) //rathestation.bid
{
safelyNavigate ( document . querySelector ( "#yangDihilangkan > a" ) . href )
2018-12-30 12:25:26 +01:00
return finish ( )
2018-10-07 21:33:44 +02:00
}
if ( document . querySelector ( "a#btn-main.disabled" ) && typeof Countdown == "function" ) //Croco,CPMLink,Sloomp.space
{
safelyNavigate ( document . querySelector ( "a#btn-main.disabled" ) . href )
2018-12-30 12:25:26 +01:00
return finish ( )
2018-10-07 21:33:44 +02:00
}
if ( document . querySelector ( "a.redirectBTN.disabled" ) && document . querySelector ( ".timer" ) ) //Arablionz.online
{
safelyNavigate ( document . querySelector ( "a.redirectBTN.disabled" ) . href )
2018-12-30 12:25:26 +01:00
return finish ( )
2018-10-07 21:33:44 +02:00
}
2019-02-05 22:40:01 +01:00
if ( typeof generate == "function" ) //lewat.wibuindo.com
{
let b = document . querySelector ( "#download > a.akani[href]" )
if ( b )
{
safelyNavigate ( b . href )
}
}
2018-10-07 21:33:44 +02:00
if ( document . querySelector ( ".shortened_link a[href][ng-href][target='_blank']" ) ) //Go2to.com,Go2too.com,Golink.to
{
safelyNavigate ( document . querySelector ( ".shortened_link a[href][ng-href][target='_blank']" ) . href )
}
if ( document . querySelector ( "a[href^='https://linkshrink.net/homepage'] > img.lgo" ) ) //LinkShrink.net
{
2018-10-16 01:57:00 +02:00
let p = document . getElementById ( "pause" ) , s = document . getElementById ( "skip" )
if ( p && s )
2018-06-15 21:35:23 +02:00
{
2018-10-16 01:57:00 +02:00
//Automating the click seems to not always work due to ads so we're only skipping the timer
p . style . display = "none"
s . style . display = "block"
2018-06-13 10:00:18 +02:00
}
2018-10-07 21:33:44 +02:00
}
2019-02-11 09:24:36 +01:00
if ( typeof x != "undefined" )
2018-10-07 21:33:44 +02:00
{
2019-02-11 09:24:36 +01:00
if ( document . querySelector ( "a.navbar-brand.logo-image[href='/'] > img[src='/img/4.png']" ) ) //gslink.co
2018-05-28 01:40:02 +02:00
{
2019-02-11 09:24:36 +01:00
let a = document . querySelector ( "a.btnx[href][onclick]" )
if ( a )
{
safelyNavigate ( a . href + "&ab=1" )
return finish ( )
}
else
{
let b = document . querySelector ( "form[method='POST'] > input.btn[type='submit'][name='btn']" )
if ( b )
{
b . click ( )
return finish ( )
}
}
}
else if ( document . querySelector ( ".img-responsive[alt='Gets URL']" ) ) //gsul.me
{
let b = document . getElementById ( "link" )
if ( b )
{
safelyNavigate ( b . href + "&ab=1" )
return finish ( )
}
2018-05-28 01:40:02 +02:00
}
2018-10-07 21:33:44 +02:00
}
if ( document . querySelector ( ".top-bar a[href='https://linkvertise.net']" ) && typeof app != "undefined" && app . handleRedirect ) //Linkvertise.net
{
app . countdown = 0
$ . post = ( u , c ) => c ( )
app . handleRedirect ( )
}
if ( document . querySelectorAll ( "img[src='/assets/img/logo.png'][alt='Openload']" ) . length ) //OpenLoad
{
if ( typeof secondsdl != "undefined" )
2018-12-30 12:25:26 +01:00
{
2018-10-07 21:33:44 +02:00
secondsdl = 0
2018-12-30 12:25:26 +01:00
}
return finish ( )
2018-10-07 21:33:44 +02:00
}
//SafeLinkReview.com
if ( document . querySelector ( ".navbar-brand" ) && document . querySelector ( ".navbar-brand" ) . textContent . trim ( ) == "Safe Link Review" && document . querySelector ( ".button.green" ) )
{
window . open = safelyNavigate
document . querySelector ( ".button.green" ) . click ( )
2018-12-30 12:25:26 +01:00
return finish ( )
2018-10-07 21:33:44 +02:00
}
if ( location . hostname == "decrypt2.safelinkconverter.com" && document . querySelector ( ".redirect_url > div[onclick]" ) )
{
window . open = safelyNavigate
document . querySelector ( ".redirect_url > div[onclick]" ) . click ( )
2018-12-30 12:25:26 +01:00
return finish ( )
2018-10-07 21:33:44 +02:00
}
2019-01-29 22:20:21 +01:00
//Shorte.st
2019-02-17 13:15:59 +01:00
if ( typeof app != "undefined" && document . querySelector ( ".skip-add-container .first-img[alt='Shorte.st']" ) )
2019-01-29 22:20:21 +01:00
{
2019-02-17 13:15:59 +01:00
window . setInterval = f => sI ( f , 500 )
let dUC = window . decodeURIComponent
window . decodeURIComponent = c => {
c = dUC ( c )
safelyNavigate ( c )
return c
}
crowdBypass ( ( ) => {
window . decodeURIComponent = c => {
c = dUC ( c )
document . querySelector ( ".skip-add-container" ) . textContent = ""
contributeAndNavigate ( c )
return c
}
} )
return
2019-01-29 22:20:21 +01:00
}
2018-10-07 21:33:44 +02:00
let t = document . querySelector ( "title" )
if ( t )
{
2019-02-02 22:00:42 +01:00
t = t . textContent . trim ( )
if ( t == "Viid.su" ) //Viid.su
2018-05-28 01:40:02 +02:00
{
2018-10-07 21:33:44 +02:00
let b = document . getElementById ( "link-success-button" )
if ( b && b . getAttribute ( "data-url" ) )
2018-05-28 01:40:02 +02:00
{
2018-10-07 21:33:44 +02:00
safelyNavigate ( b . getAttribute ( "data-url" ) )
2018-12-30 12:25:26 +01:00
return finish ( )
2018-05-28 01:40:02 +02:00
}
}
2019-02-02 22:00:42 +01:00
else
{
let b = document . querySelector ( "a#makingdifferenttimer[href]" )
if ( b )
{
if ( isGoodLink ( t ) )
{
unsafelyNavigate ( t )
}
else
{
safelyNavigate ( b . href )
}
}
}
2018-10-07 21:33:44 +02:00
}
2019-01-01 18:43:20 +01:00
//Monitor DOM for disturbances for 3 seconds.
let dT = sI ( ( ) => {
//Shorte.st Embed
if ( document . querySelector ( ".lay-sh.active-sh" ) )
2018-06-01 18:45:23 +02:00
{
2018-10-07 21:33:44 +02:00
let elm = document . querySelectorAll ( ".lay-sh.active-sh" ) [ 0 ]
elm . parentNode . removeChild ( elm )
2018-06-01 18:45:23 +02:00
}
2019-01-01 18:43:20 +01:00
//AdLinkFly
if ( typeof app _vars == "object" )
{
document . documentElement . setAttribute ( "data-universal-bypass-adlinkfly-info" , "" )
let iT = setInterval ( ( ) => {
if ( document . documentElement . hasAttribute ( "data-universal-bypass-adlinkfly-target" ) )
{
clearInterval ( iT )
let t = document . documentElement . getAttribute ( "data-universal-bypass-adlinkfly-target" )
if ( t == "" )
{
crowdBypass ( ( ) => {
let cT = setInterval ( ( ) => {
let a = document . querySelector ( "a.get-link" )
if ( ! a )
{
a = document . querySelector ( ".skip-ad a[href]" )
2019-02-02 22:00:42 +01:00
if ( ! a )
{
a = document . querySelector ( "[enlace]" ) //adigp.com
}
2019-01-01 18:43:20 +01:00
}
if ( a )
{
h = a . href
if ( ! isGoodLink ( h ) && a . hasAttribute ( "data-href" ) ) //cuio.io
{
h = a . getAttribute ( "data-href" )
}
2019-02-02 22:00:42 +01:00
if ( ! isGoodLink ( h ) && a . hasAttribute ( "enlace" ) )
{
h = a . getAttribute ( "enlace" )
}
2019-01-01 18:43:20 +01:00
if ( isGoodLink ( h ) )
{
clearInterval ( cT )
a . parentNode . removeChild ( a )
contributeAndNavigate ( h )
}
}
2019-02-17 13:15:59 +01:00
} , 20 )
2019-01-01 18:43:20 +01:00
} )
}
else
{
contributeAndNavigate ( t )
}
}
} , 50 )
domainBypass ( "oke.io" , ( ) => window . setInterval = f => sI ( f , 1 ) )
clearInterval ( dT )
}
2018-10-08 16:26:22 +02:00
} , 100 )
2019-01-01 18:43:20 +01:00
setTimeout ( ( ) => {
clearInterval ( dT )
finish ( )
2019-02-17 22:38:00 +01:00
} , 30000 )
2019-01-11 19:28:26 +01:00
} ) `
2019-01-13 21:07:15 +01:00
let dO = new MutationObserver ( mutations => {
2019-02-17 13:15:59 +01:00
if ( document . documentElement . hasAttribute ( "data-universal-bypass-stop-watching" ) )
{
document . documentElement . removeAttribute ( "data-universal-bypass-stop-watching" )
dO . disconnect ( )
}
else if ( document . documentElement . hasAttribute ( "data-universal-bypass-crowd-query" ) )
{
document . documentElement . removeAttribute ( "data-universal-bypass-crowd-query" )
let xhr = new XMLHttpRequest ( )
xhr . onreadystatechange = ( ) => {
if ( xhr . readyState == 4 && xhr . status == 200 && xhr . responseText != "" )
{
location . href = brws . runtime . getURL ( "html/crowd-bypassed.html" ) + "?target=" + encodeURIComponent ( xhr . responseText ) + "&back=" + encodeURIComponent ( location . href )
}
else
{
document . documentElement . setAttribute ( "data-universal-bypass-crowd-queried" , "" )
}
}
xhr . open ( "POST" , "https://universal-bypass.org/crowd/query_v1" , true )
xhr . setRequestHeader ( "Content-Type" , "application/x-www-form-urlencoded" )
xhr . send ( "domain=" + encodeURIComponent ( domain ) + "&path=" + encodeURIComponent ( location . pathname . toString ( ) . substr ( 1 ) ) )
}
else if ( document . documentElement . hasAttribute ( "data-universal-bypass-crowd-contribute" ) )
{
let target = document . documentElement . getAttribute ( "data-universal-bypass-crowd-contribute" ) ,
xhr = new XMLHttpRequest ( )
document . documentElement . removeAttribute ( "data-universal-bypass-crowd-contribute" )
xhr . onreadystatechange = ( ) => {
if ( xhr . readyState == 4 )
{
document . documentElement . setAttribute ( "data-universal-bypass-crowd-contributed" , "" )
}
}
xhr . open ( "POST" , "https://universal-bypass.org/crowd/contribute_v1" , true )
xhr . setRequestHeader ( "Content-Type" , "application/x-www-form-urlencoded" )
xhr . send ( "domain=" + encodeURIComponent ( domain ) + "&path=" + encodeURIComponent ( location . pathname . toString ( ) . substr ( 1 ) ) + "&target=" + encodeURIComponent ( target ) )
}
else if ( document . documentElement . hasAttribute ( "data-universal-bypass-adlinkfly-info" ) )
2019-01-11 19:28:26 +01:00
{
document . documentElement . removeAttribute ( "data-universal-bypass-adlinkfly-info" )
let xhr = new XMLHttpRequest ( ) , t = "" , iu = location . href
xhr . onreadystatechange = ( ) => {
if ( xhr . readyState == 4 )
2018-10-07 21:33:44 +02:00
{
2019-01-11 19:28:26 +01:00
if ( xhr . status == 200 )
2018-10-07 21:33:44 +02:00
{
2019-01-11 19:28:26 +01:00
let i = new DOMParser ( ) . parseFromString ( xhr . responseText , "text/html" ) . querySelector ( "img[src^='//api.miniature.io']" )
if ( i )
{
let url = new URL ( i . src )
if ( url . search && url . search . indexOf ( "url=" ) )
t = decodeURIComponent ( url . search . split ( "url=" ) [ 1 ] . split ( "&" ) [ 0 ] )
}
2018-10-07 21:33:44 +02:00
}
2019-01-11 19:28:26 +01:00
document . documentElement . setAttribute ( "data-universal-bypass-adlinkfly-target" , t )
2018-10-07 21:33:44 +02:00
}
}
2019-01-17 16:04:45 +01:00
if ( iu . substr ( iu . length - 1 ) != "/" )
{
iu += "/"
}
xhr . open ( "GET" , iu + "info" , true )
2019-01-11 19:28:26 +01:00
xhr . send ( )
2018-10-15 06:55:21 +02:00
}
2019-02-17 13:15:59 +01:00
} ) ,
domain = location . hostname
if ( domain . substr ( 0 , 4 ) == "www." )
{
domain = domain . substr ( 4 )
}
dO . observe ( document . documentElement , { attributes : true } )
2019-01-21 09:40:12 +01:00
script . innerHTML += "\n" + res . userscript + "\n})()"
2019-01-11 19:28:26 +01:00
script = document . documentElement . appendChild ( script )
setTimeout ( ( ) => document . documentElement . removeChild ( script ) , 10 )
2018-05-28 18:27:15 +02:00
} )
2018-03-24 19:30:18 +01:00
}