diff --git a/html/app.js b/html/app.js index d049da8e..034f849c 100644 --- a/html/app.js +++ b/html/app.js @@ -3441,31 +3441,32 @@ CefSharp.BindObjectAsync( }); $app.methods.refreshFriends = function (ref, origin) { - var map = {}; - ref.friends.forEach((id) => { - map[id] = 'offline'; - }); - ref.offlineFriends.forEach((id) => { - map[id] = 'offline'; - }); - ref.activeFriends.forEach((id) => { - map[id] = 'active'; - }); - ref.onlineFriends.forEach((id) => { - map[id] = 'online'; - }); - for (var id in map) { + var states = {}; + for (var id of ref.friends) { + states[id] = 'offline'; + } + for (var id of ref.offlineFriends) { + states[id] = 'offline'; + } + for (var id of ref.activeFriends) { + states[id] = 'active'; + } + for (var id of ref.onlineFriends) { + states[id] = 'online'; + } + for (var id in states) { if (this.friends.has(id)) { - this.updateFriend(id, map[id], origin); + this.updateFriend(id, states[id], origin); } else { - this.addFriend(id, map[id]); + this.addFriend(id, states[id]); } } for (var id of this.friends.keys()) { - if (map[id] === undefined) { + if (states[id] === undefined) { this.deleteFriend(id); } } + // called from API.login(), API.loginWithSteam(), API.getCurrentUser() if (origin) { API.refreshFriends(); }