@@ -329,21 +329,26 @@ io.sockets.on('connection', function(socket) {
329
329
socket . on ( 'change host' , function ( data ) {
330
330
var roomnum = data . room
331
331
var newHost = socket . id
332
- console . log ( "I want to be the host and my socket id is: " + newHost ) ;
333
- //console.log(io.sockets.adapter.rooms['room-' + socket.roomnum])
332
+ var currHost = io . sockets . adapter . rooms [ 'room-' + socket . roomnum ] . host
334
333
335
- // Broadcast to current host and set false
336
- socket . broadcast . to ( io . sockets . adapter . rooms [ 'room-' + socket . roomnum ] . host ) . emit ( 'unSetHost' ) ;
337
- // Reset host
338
- io . sockets . adapter . rooms [ 'room-' + socket . roomnum ] . host = newHost
339
- // Broadcast to new host and set true
340
- socket . emit ( 'setHost' )
341
-
342
- io . sockets . adapter . rooms [ 'room-' + socket . roomnum ] . hostName = socket . username
343
- // Update host label in all sockets
344
- io . sockets . in ( "room-" + roomnum ) . emit ( 'changeHostLabel' , {
345
- username : socket . username
346
- } ) ;
334
+ // If socket is already the host!
335
+ if ( newHost != currHost ) {
336
+ console . log ( "I want to be the host and my socket id is: " + newHost ) ;
337
+ //console.log(io.sockets.adapter.rooms['room-' + socket.roomnum])
338
+
339
+ // Broadcast to current host and set false
340
+ socket . broadcast . to ( currHost ) . emit ( 'unSetHost' ) ;
341
+ // Reset host
342
+ io . sockets . adapter . rooms [ 'room-' + socket . roomnum ] . host = newHost
343
+ // Broadcast to new host and set true
344
+ socket . emit ( 'setHost' )
345
+
346
+ io . sockets . adapter . rooms [ 'room-' + socket . roomnum ] . hostName = socket . username
347
+ // Update host label in all sockets
348
+ io . sockets . in ( "room-" + roomnum ) . emit ( 'changeHostLabel' , {
349
+ username : socket . username
350
+ } ) ;
351
+ }
347
352
348
353
} ) ;
349
354
0 commit comments