(function() {
- // don't emit events from inside the previews themselves
- var qs = window.location.href.split('?');
- if (qs.length > 1 && qs[1].match('receiver')) { return; }
+ // don't emit events from inside the previews themselves
+ var qs = window.location.href.split('?');
+ if (qs.length > 1 && qs[1].match('receiver')) { 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);
+ 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;
+ 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;
- }
+ 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
- };
+ 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);
- } );
+ socket.emit('slidechanged', slideData);
+ } );
}());
io = io.listen(app);
var opts = {
- port : 1947,
- baseDir : __dirname + '/../../'
+ port : 1947,
+ baseDir : __dirname + '/../../'
};
io.sockets.on('connection', function(socket) {
- socket.on('slidechanged', function(slideData) {
- socket.broadcast.emit('slidedata', slideData);
- });
+ socket.on('slidechanged', function(slideData) {
+ socket.broadcast.emit('slidedata', slideData);
+ });
});
app.configure(function() {
- [ 'css', 'assets', 'js', 'lib' ].forEach(function(dir) {
- app.use('/' + dir, staticDir(opts.baseDir + dir));
- });
+ [ 'css', 'assets', 'js', 'lib' ].forEach(function(dir) {
+ app.use('/' + dir, staticDir(opts.baseDir + dir));
+ });
});
app.get("/", function(req, res) {
- fs.createReadStream(opts.baseDir + '/index.html').pipe(res);
+ fs.createReadStream(opts.baseDir + '/index.html').pipe(res);
});
app.get("/_notes/:socketId", function(req, res) {
- fs.readFile(opts.baseDir + 'slidenotes/notes.html', function(err, data) {
- res.send(Mustache.to_html(data.toString(), {
- socketId : req.params.socketId
- }));
- });
- // fs.createReadStream(opts.baseDir + 'slidenotes/notes.html').pipe(res);
+ fs.readFile(opts.baseDir + 'lib/slidenotes/notes.html', function(err, data) {
+ res.send(Mustache.to_html(data.toString(), {
+ socketId : req.params.socketId
+ }));
+ });
+ // fs.createReadStream(opts.baseDir + 'slidenotes/notes.html').pipe(res);
});
// Actually listen