@ -24,32 +24,44 @@
$ ( document ) . ready ( function ( ) {
const ON = "[Remove]" ;
const ON = "[Remove]" ;
const OFF = "[Embed]" ;
const YOUTUBE = 'www.youtube.com' ;
const ONION = 'tuberyps2pn6dor6h47brof3w2asmauahhk4ei42krugybzzzo55klad.onion' ;
const PROXY = 'incogtube.com'
function addEmbedButton ( index , videoNode ) {
videoNode = $ ( videoNode ) ;
var contents = videoNode . contents ( ) ;
var videoId = videoNode . data ( 'video' ) ;
var span = $ ( "<span>[Embed]</span>" ) ;
var embedNode = $ ( '<iframe style="float:left;margin: 10px 20px" type="text/html" ' +
'width="360" height="270" src="//www.youtube.com/embed/' + videoId +
var contents = videoNode . contents ( ) ;
var videoId = videoNode . data ( 'video' ) ;
var span = $ ( "<span>[Embed]</span>" ) ;
var spanProxy = $ ( "<span>[Proxy]</span>" ) ;
var makeEmbedNode = function ( embedHost ) {
return $ ( '<iframe style="float:left;margin: 10px 20px" type="text/html" ' +
'width="360" height="270" src="//' + embedHost + '/embed/' + videoId +
'?autoplay=1&html5=1" allowfullscreen frameborder="0"/>' ) ;
}
var defaultEmbed = makeEmbedNode ( location . hostname . includes ( "onion" ) ? ONION : YOUTUBE ) ;
var proxyEmbed = makeEmbedNode ( PROXY ) ;
videoNode . click ( function ( e ) {
e . preventDefault ( ) ;
e . preventDefault ( ) ;
if ( span . text ( ) == ON ) {
videoNode . append ( spanProxy ) ;
videoNode . append ( contents ) ;
embedNode . remove ( ) ;
defaultEmbed . remove ( ) ;
proxyEmbed . remove ( ) ;
span . text ( OFF ) ;
} else {
} else {
contents . detach ( ) ;
videoNode . append ( embedNode ) ;
span . text ( ON ) ;
spanProxy . remove ( ) ;
videoNode . append ( e . target == spanProxy [ 0 ] ? proxyEmbed : defaultEmbed ) ;
}
} ) ;
videoNode . append ( span ) ;
videoNode . append ( spanProxy ) ;
}
$ ( 'div.video-container' , document ) . each ( addEmbedButton ) ;
@ -57,7 +69,7 @@ $(document).ready(function(){
// allow to work with auto-reload.js, etc.
$ ( document ) . on ( 'new_post' , function ( e , post ) {
$ ( 'div.video-container' , post ) . each ( addEmbedButton ) ;
$ ( 'div.video-container' , post ) . each ( addEmbedButton ) ;
} ) ;
} ) ;