From 795db443bd1609cfc8254ab036c98157a68437f0 Mon Sep 17 00:00:00 2001 From: Alexander Weidinger Date: Fri, 4 Sep 2015 17:50:48 +0200 Subject: [PATCH] Fixes #872. --- js/views/navigation-accounts.js | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) diff --git a/js/views/navigation-accounts.js b/js/views/navigation-accounts.js index 24b57d3b..f747de5e 100644 --- a/js/views/navigation-accounts.js +++ b/js/views/navigation-accounts.js @@ -55,9 +55,37 @@ define(function(require) { var activeFolder = this.getFolderById(); if (unseen) { activeFolder.set('unseen', activeFolder.get('unseen') + 1); + // Handle unified inbox + if (activeFolder.get('accountId') === -1) { + // get currently active message, to receive real accountId + var message = require('app').Cache.getMessage(require('app').State.currentAccountId, require('app').State.currentFolderId, require('app').State.currentMessageId); + // get inbox folder of that accountId + var folder = this.getFolderById(message.accountId, message.folderId); + folder.set('unseen', folder.get('unseen') - 1); + } else { + var folder = this.collection.get(-1).get('folders').models[0]; + folder.set('unseen', folder.get('unseen') + 1); + } + // end } else { if (activeFolder.get('unseen') > 0) { activeFolder.set('unseen', activeFolder.get('unseen') - 1); + // Handle unified inbox + if (activeFolder.get('accountId') === -1) { + // get currently active message, to receive real accountId + var message = require('app').Cache.getMessage(require('app').State.currentAccountId, require('app').State.currentFolderId, require('app').State.currentMessageId); + // get inbox folder of that accountId + var folder = this.getFolderById(message.accountId, message.folderId); + if (folder.get('unseen') > 0) { + folder.set('unseen', folder.get('unseen') - 1); + } + } else { + var folder = this.collection.get(-1).get('folders').models[0]; + if (folder.get('unseen') > 0) { + folder.set('unseen', folder.get('unseen') - 1); + } + } + // end } } this.updateTitle();