From 60a677edf4b905fd70f86ce3fcf4d4901a440e72 Mon Sep 17 00:00:00 2001 From: rr- Date: Sat, 2 Apr 2016 18:57:17 +0200 Subject: [PATCH] client/api: handle connection errors --- client/css/main.css | 1 + client/js/api.js | 4 +++- client/js/views/base_view.js | 2 +- 3 files changed, 5 insertions(+), 2 deletions(-) diff --git a/client/css/main.css b/client/css/main.css index c161a6a..e4f27ab 100644 --- a/client/css/main.css +++ b/client/css/main.css @@ -112,6 +112,7 @@ nav.text-nav ul li.active a { .messages { width: 30em; + max-width: 100%; } .messages .message { display: inline-block; diff --git a/client/js/api.js b/client/js/api.js index b950b68..0bb6c80 100644 --- a/client/js/api.js +++ b/client/js/api.js @@ -31,7 +31,9 @@ class Api { req.set('Accept', 'application/json') .end((error, response) => { if (error) { - reject(response.body); + reject(response && response.body ? response.body : { + 'title': 'Networking error', + 'description': error.message}); } else { resolve(response.body); } diff --git a/client/js/views/base_view.js b/client/js/views/base_view.js index 1a0f7d0..0f4aaf8 100644 --- a/client/js/views/base_view.js +++ b/client/js/views/base_view.js @@ -32,7 +32,7 @@ class BaseView { const messagesHolder = this.contentHolder.querySelector('.messages'); /* TODO: animate this */ const node = document.createElement('div'); - node.innerHTML = message; + node.innerHTML = message.replace(/\n/g, '
'); node.classList.add('message'); node.classList.add(className); messagesHolder.appendChild(node);