From b3223155b178427354b44f05167d0afba0926cbd Mon Sep 17 00:00:00 2001 From: Christian Mollekopf Date: Mon, 24 Apr 2017 21:51:24 +0200 Subject: Another bunch of controllers gone --- framework/src/sinkfabric.cpp | 15 +++++++++++++++ 1 file changed, 15 insertions(+) (limited to 'framework/src/sinkfabric.cpp') diff --git a/framework/src/sinkfabric.cpp b/framework/src/sinkfabric.cpp index 68a75a86..5e209526 100644 --- a/framework/src/sinkfabric.cpp +++ b/framework/src/sinkfabric.cpp @@ -53,6 +53,15 @@ public: Store::synchronize(SyncScope()).exec(); } } + if (id == "sendOutbox"/*Kube::Messages::synchronize*/) { + Query query; + query.containsFilter(ResourceCapabilities::Mail::transport); + auto job = Store::fetchAll(query) + .each([=](const SinkResource::Ptr &resource) -> KAsync::Job { + return Store::synchronize(SyncScope{}.resourceFilter(resource->identifier())); + }); + job.exec(); + } if (id == "markAsRead"/*Kube::Messages::synchronize*/) { if (auto mail = message["mail"].value()) { mail->setUnread(false); @@ -77,6 +86,12 @@ public: Store::modify(*mail).exec(); } } + if (id == "moveToDrafts"/*Kube::Messages::synchronize*/) { + if (auto mail = message["mail"].value()) { + mail->setDraft(true); + Store::modify(*mail).exec(); + } + } if (id == "moveToFolder"/*Kube::Messages::synchronize*/) { if (auto mail = message["mail"].value()) { auto folder = message["folder"].value(); -- cgit v1.2.3