diff --git a/lib/proto/ewd-client.js b/lib/proto/ewd-client.js index 5d2c2d3..6cd0084 100644 --- a/lib/proto/ewd-client.js +++ b/lib/proto/ewd-client.js @@ -34,6 +34,7 @@ var EWD; (function() { var events = {}; + var _socket; var emitter = { on: function(type, callback, deleteWhenFinished) { @@ -176,11 +177,11 @@ var EWD; } if (token || messageObj.type === 'ewd-register') { messageObj.token = token; - console.log('Ajax send: ' + JSON.stringify(messageObj)); + if (EWD.log) console.log('Ajax send: ' + JSON.stringify(messageObj)); (function(type) { function success(data) { - console.log('Ajax response for type ' + type + ': ' + JSON.stringify(data)); + if (EWD.log) console.log('Ajax response for type ' + type + ': ' + JSON.stringify(data)); if (data.ewd_response !== false) { handleResponse({ type: type, @@ -223,8 +224,9 @@ var EWD; .done(function(data) { success(data); }) - .error(function(err) { - var error = err.responseJSON.error; + .fail(function(jqXHR, textStatus, errorThrown) { + var error = jqXHR.responseJSON ? jqXHR.responseJSON.error : ''; + if (!error) error = 'Ajax call failed: ' + textStatus; fail(error); }); } @@ -274,6 +276,7 @@ var EWD; else { socket = io.connect(); } + _socket = socket; socket.on('connect', function() { EWD.disconnectSocket = function() { @@ -334,6 +337,11 @@ var EWD; proto.off = emitter.off; proto.emit = emitter.emit; proto.start = start; + Object.defineProperty(proto, 'socketConnected', { + get: function() { + return _socket ? _socket.connected : undefined; + } + }); EWD = new ewd(); })();