diff --git a/public/src/ajaxify.js b/public/src/ajaxify.js index 9fa4b16262..0e419fda58 100644 --- a/public/src/ajaxify.js +++ b/public/src/ajaxify.js @@ -46,7 +46,7 @@ $(document).ready(function() { ajaxify.go = function (url, callback, quiet) { // "quiet": If set to true, will not call pushState - app.enterRoom('global'); + app.enterRoom(''); $(window).off('scroll'); diff --git a/public/src/app.js b/public/src/app.js index 94db871a31..260d22734c 100644 --- a/public/src/app.js +++ b/public/src/app.js @@ -45,12 +45,12 @@ var socket, case 'admin': room = 'admin'; break; - default: - room = 'global'; + case 'home': + room = 'home'; break; } - - app.enterRoom(room, true); + app.currentRoom = ''; + app.enterRoom(room); socket.emit('meta.reconnected'); @@ -198,9 +198,9 @@ var socket, }); }; - app.enterRoom = function (room, force) { + app.enterRoom = function (room) { if (socket) { - if (app.currentRoom === room && !force) { + if (app.currentRoom === room) { return; } diff --git a/src/socket.io/meta.js b/src/socket.io/meta.js index 28eec77517..b6397d5fc3 100644 --- a/src/socket.io/meta.js +++ b/src/socket.io/meta.js @@ -66,11 +66,13 @@ SocketMeta.rooms.enter = function(socket, data, callback) { return callback(new Error('[[error:invalid-data]]')); } - if (data.leave !== null) { + if (data.leave) { socket.leave(data.leave); } - socket.join(data.enter); + if (data.enter) { + socket.join(data.enter); + } if (data.leave && data.leave !== data.enter && data.leave.indexOf('topic') !== -1) { module.parent.exports.updateRoomBrowsingText(data.leave);