diff options
Diffstat (limited to 'js')
| -rw-r--r-- | js/channel.js | 23 |
1 files changed, 13 insertions, 10 deletions
diff --git a/js/channel.js b/js/channel.js index 96d1061..f994ada 100644 --- a/js/channel.js +++ b/js/channel.js @@ -9,6 +9,7 @@ function ready(callback) { } ready(() => { + let channel = document.querySelector('meta[name=channel]').content; let template = document.querySelector('#message').content; document.querySelectorAll('link[rel=events]').forEach(elem => { @@ -17,18 +18,20 @@ ready(() => { source.addEventListener('message', message => { let body = JSON.parse(message.data); - document.querySelectorAll('.messages').forEach(elem => { - let message = template.cloneNode(true); + if (body.channel === channel) { + document.querySelectorAll('.messages').forEach(elem => { + let message = template.cloneNode(true); - message.querySelectorAll('.sender') - .forEach(elem => elem.textContent = body.sender.name); - message.querySelectorAll('.message') - .forEach(elem => elem.textContent = body.body); - message.querySelectorAll('.sent_at') - .forEach(elem => elem.textContent = body.sent_at); + message.querySelectorAll('.sender') + .forEach(elem => elem.textContent = body.sender.name); + message.querySelectorAll('.message') + .forEach(elem => elem.textContent = body.body); + message.querySelectorAll('.sent_at') + .forEach(elem => elem.textContent = body.sent_at); - message.childNodes.forEach(node => elem.appendChild(node)); - }); + message.childNodes.forEach(node => elem.appendChild(node)); + }); + } }); }); }) |
