diff options
Diffstat (limited to 'lib')
-rw-r--r-- | lib/assets/javascripts/cable/connection.js.coffee | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/lib/assets/javascripts/cable/connection.js.coffee b/lib/assets/javascripts/cable/connection.js.coffee index cd9539a6aa..98af9ad8ab 100644 --- a/lib/assets/javascripts/cable/connection.js.coffee +++ b/lib/assets/javascripts/cable/connection.js.coffee @@ -12,20 +12,23 @@ class Cable.Connection else false - open: -> + open: => @websocket = new WebSocket(@consumer.url) @websocket.onmessage = @onMessage @websocket.onopen = @onOpen @websocket.onclose = @onClose @websocket.onerror = @onError - @websocket close: -> @websocket.close() unless @isClosed() reopen: -> - @close() - @open() + if @isClosed() + @open() + else + @websocket.onclose = @open + @websocket.onerror = @open + @websocket.close() isOpen: -> @websocket.readyState is WebSocket.OPEN |