diff options
Diffstat (limited to 'plugin/multiplex/master.js')
-rw-r--r-- | plugin/multiplex/master.js | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/plugin/multiplex/master.js b/plugin/multiplex/master.js new file mode 100644 index 0000000..5c18390 --- /dev/null +++ b/plugin/multiplex/master.js @@ -0,0 +1,32 @@ +(function() { + // don't emit events from inside the previews themselves + if ( window.location.search.match( /receiver/gi ) ) { return; } + var multiplex = window.globals.multiplex; + + var socket = io.connect(multiplex.url); + + Reveal.addEventListener( 'slidechanged', function( event ) { + var nextindexh; + var nextindexv; + var slideElement = event.currentSlide; + + if (slideElement.nextElementSibling && slideElement.parentNode.nodeName == 'SECTION') { + nextindexh = event.indexh; + nextindexv = event.indexv + 1; + } else { + nextindexh = event.indexh + 1; + nextindexv = 0; + } + + var slideData = { + indexh : event.indexh, + indexv : event.indexv, + nextindexh : nextindexh, + nextindexv : nextindexv, + secret: multiplex.secret, + socketId : multiplex.id + }; + + if( typeof event.origin === 'undefined' && event.origin !== 'remote' ) socket.emit('slidechanged', slideData); + } ); +}()); |