From ec45b1c13a1e40a16e63c36cb3070099ba65d9e0 Mon Sep 17 00:00:00 2001 From: xdrm-brackets Date: Thu, 7 Dec 2017 23:19:49 +0100 Subject: [PATCH] fix: view.websocket (object to data) --- view/websocket.js | 24 ++++++++++++++++-------- 1 file changed, 16 insertions(+), 8 deletions(-) diff --git a/view/websocket.js b/view/websocket.js index 207269b..bbabe05 100644 --- a/view/websocket.js +++ b/view/websocket.js @@ -24,9 +24,17 @@ window.wsc_emergency = wsc.channel('emergency/31').listen(function(msg, err){ ( new Audio('https://notificationsounds.com/message-tones/communication-channel-519/download/mp3') ).play(); // {2} Add messages to stack // - for( var id in msg.add ) - if( gstore.data.notif.emergency.data[id] == null ) - gstore.data.notif.emergency.data[id] = msg.add[id]; + for( var id in msg.add ){ + + var tmp = msg.add[id]; // add id to data + tmp.id = id; + + gstore.data.notif.emergency.data.push(tmp); + + } + + // if( gstore.data.notif.emergency.data[id] == null ) + // gstore.data.notif.emergency.data[id] = msg.add[id]; // {3} Add notification count if not already on page // if( router.app.$route.path != '/emergency' ) @@ -38,8 +46,8 @@ window.wsc_emergency = wsc.channel('emergency/31').listen(function(msg, err){ if( msg.del != null ){ // {1} Rem messages from stack // - for( var id of msg.del ) - if( gstore.data.notif.emergency.data[id] != null ) + for( var id of gstore.data.notif.emergency.data ) + if( msg.del.indexOf(gstore.data.notif.emergency.data[id].id) > -1 ) delete gstore.data.notif.emergency.data[id]; } @@ -48,9 +56,9 @@ window.wsc_emergency = wsc.channel('emergency/31').listen(function(msg, err){ if( msg.upd != null ){ // {1} Update messages in stack // - for( var id of msg.upd ) - if( gstore.data.notif.emergency.data[id] != null ) - gstore.data.notif.emergency.data[id] = msg.upd[id]; + for( var id of gstore.data.notif.emergency.data ) + if( msg.del.indexOf(gstore.data.notif.emergency.data[id].id) > -1 ) + gstore.data.notif.emergency.data[id] = msg.upd; }