diff options
author | Hakim El Hattab | 2012-07-09 21:00:51 -0400 |
---|---|---|
committer | Hakim El Hattab | 2012-07-09 21:00:51 -0400 |
commit | f57de200ec32861835c9582090d52c70e73dace9 (patch) | |
tree | 79830bdec71f7c3dc882c496e785b4348a733390 /plugin/slidenotes/client.js | |
parent | e7c5de23d7dc318babaee0fda69f4246a186f01a (diff) |
refactored folder structure, added /plugins which is initially only used by #57
Diffstat (limited to 'plugin/slidenotes/client.js')
-rw-r--r-- | plugin/slidenotes/client.js | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/plugin/slidenotes/client.js b/plugin/slidenotes/client.js new file mode 100644 index 0000000..1aba8b8 --- /dev/null +++ b/plugin/slidenotes/client.js @@ -0,0 +1,35 @@ +(function() { + // don't emit events from inside the previews themselves + if ( window.location.search.match( /receiver/gi ) ) { return; } + + var socket = io.connect(window.location.origin); + var socketId = Math.random().toString().slice(2); + + console.log('View slide notes at ' + window.location.origin + '/notes/' + socketId); + + 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 notes = slideElement.querySelector('aside.notes'); + var slideData = { + notes : notes ? notes.innerHTML : '', + indexh : event.indexh, + indexv : event.indexv, + nextindexh : nextindexh, + nextindexv : nextindexv, + socketId : socketId + }; + + socket.emit('slidechanged', slideData); + } ); +}()); |