mirror of
https://github.com/M66B/FairEmail.git
synced 2026-03-30 05:44:51 +02:00
Moved nav folders into nav accounts
This commit is contained in:
@@ -77,6 +77,55 @@ public interface DaoAccount {
|
||||
", account.name COLLATE NOCASE")
|
||||
LiveData<List<TupleAccountEx>> liveAccountsEx(boolean all);
|
||||
|
||||
@Query("SELECT account.*" +
|
||||
", NULL AS folderId, NULL AS folderType, -1 AS folderOrder" +
|
||||
", NULL AS folderName, NULL AS folderDisplay, NULL AS folderColor" +
|
||||
", 0 AS folderSync, NULL AS folderState, NULL AS folderSyncState" +
|
||||
", 0 AS executing" +
|
||||
", 0 AS messages" +
|
||||
", (SELECT COUNT(DISTINCT" +
|
||||
" CASE WHEN NOT message.hash IS NULL THEN message.hash" +
|
||||
" WHEN NOT message.msgid IS NULL THEN message.msgid" +
|
||||
" ELSE message.id END)" +
|
||||
" FROM message" +
|
||||
" JOIN folder ON folder.id = message.folder" +
|
||||
" WHERE message.account = account.id" +
|
||||
" AND folder.type <> '" + EntityFolder.ARCHIVE + "'" +
|
||||
" AND folder.type <> '" + EntityFolder.TRASH + "'" +
|
||||
" AND folder.type <> '" + EntityFolder.JUNK + "'" +
|
||||
" AND folder.type <> '" + EntityFolder.DRAFTS + "'" +
|
||||
" AND folder.type <> '" + EntityFolder.OUTBOX + "'" +
|
||||
" AND NOT ui_seen" +
|
||||
" AND NOT ui_hide) AS unseen" +
|
||||
" FROM account" +
|
||||
" WHERE account.synchronize" +
|
||||
|
||||
" UNION " +
|
||||
|
||||
" SELECT account.*" +
|
||||
", folder.id AS folderId, folder.type AS folderType, folder.`order` AS folderOrder" +
|
||||
", folder.name AS folderName, folder.display AS folderDisplay, folder.color AS folderColor" +
|
||||
", folder.synchronize AS folderSync, folder.state AS foldeState, folder.sync_state AS folderSyncState" +
|
||||
", (SELECT COUNT(operation.id) FROM operation" +
|
||||
" WHERE operation.folder = folder.id" +
|
||||
" AND state = 'executing') AS executing" +
|
||||
", (SELECT COUNT(message.id) FROM message" +
|
||||
" WHERE message.folder = folder.id" +
|
||||
" AND NOT ui_hide) AS messages" +
|
||||
", (SELECT COUNT(DISTINCT" +
|
||||
" CASE WHEN NOT message.hash IS NULL THEN message.hash" +
|
||||
" WHEN NOT message.msgid IS NULL THEN message.msgid" +
|
||||
" ELSE message.id END)" +
|
||||
" FROM message" +
|
||||
" WHERE message.folder = folder.id" +
|
||||
" AND NOT ui_seen" +
|
||||
" AND NOT ui_hide) AS unseen" +
|
||||
" FROM account" +
|
||||
" JOIN folder ON folder.account = account.id" +
|
||||
" WHERE account.synchronize" +
|
||||
" AND folder.navigation")
|
||||
LiveData<List<TupleAccountFolder>> liveAccountFolder();
|
||||
|
||||
@Query("SELECT account.*" +
|
||||
", SUM(folder.synchronize) AS folders" +
|
||||
", (SELECT COUNT(id) FROM operation" +
|
||||
|
||||
Reference in New Issue
Block a user