From 9babef0095527c35c2255bc3a28788f6184632b9 Mon Sep 17 00:00:00 2001 From: Baris Usakli Date: Tue, 22 Oct 2013 13:42:23 -0400 Subject: [PATCH] closes #422, will restart over if reconnection fails after x number of attempts --- public/src/app.js | 17 ++++++++++++++--- 1 file changed, 14 insertions(+), 3 deletions(-) diff --git a/public/src/app.js b/public/src/app.js index 3feb9b3f2e..daf8fb2427 100644 --- a/public/src/app.js +++ b/public/src/app.js @@ -21,7 +21,12 @@ var socket, socket.socket.connect(); }, 200); } else { - socket = io.connect(RELATIVE_PATH); + var max_reconnection_attemps = 5; + var reconnection_delay = 200; + socket = io.connect(RELATIVE_PATH, { + 'max reconnection attempts': max_reconnection_attemps, + 'reconnection delay': reconnection_delay + }); var reconnecting = false, reconnectEl, reconnectTimer; @@ -59,7 +64,13 @@ var socket, socket.socket.connect(); }); - socket.on('reconnecting', function (data) { + socket.on('reconnecting', function (data, attempt) { + if(attempt == max_reconnection_attemps) { + socket.socket.reconnectionAttempts = 0; + socket.socket.reconnectionDelay = reconnection_delay; + return; + } + if (!reconnectEl) reconnectEl = $('#reconnect'); reconnecting = true; @@ -322,7 +333,7 @@ var socket, if (data.posts[0].uid !== app.uid) { data.posts[0].display_moderator_tools = 'none'; } - + var html = templates.prepare(templates['topic'].blocks['posts']).parse(data); translator.translate(html, function(translatedHTML) { var uniqueid = new Date().getTime(),