diff options
author | Christian Mollekopf <chrigi_1@fastmail.fm> | 2017-03-14 16:00:38 +0100 |
---|---|---|
committer | Christian Mollekopf <chrigi_1@fastmail.fm> | 2017-03-14 16:00:38 +0100 |
commit | 68d3180e565e8d5021dcf86cb1b05d5c0b1126bd (patch) | |
tree | 775705341699c7e995e1db229fb1f06ddf909092 /framework/domain | |
parent | e52a02bb77c5292a016d2c14e0730d44d25d4000 (diff) | |
download | kube-68d3180e565e8d5021dcf86cb1b05d5c0b1126bd.tar.gz kube-68d3180e565e8d5021dcf86cb1b05d5c0b1126bd.zip |
Carddav settings
Diffstat (limited to 'framework/domain')
-rw-r--r-- | framework/domain/settings/accountsettings.cpp | 26 | ||||
-rw-r--r-- | framework/domain/settings/accountsettings.h | 8 |
2 files changed, 34 insertions, 0 deletions
diff --git a/framework/domain/settings/accountsettings.cpp b/framework/domain/settings/accountsettings.cpp index 16791a7f..d072ea9d 100644 --- a/framework/domain/settings/accountsettings.cpp +++ b/framework/domain/settings/accountsettings.cpp | |||
@@ -60,9 +60,13 @@ void AccountSettings::setAccountIdentifier(const QByteArray &id) | |||
60 | mSmtpServer = QString(); | 60 | mSmtpServer = QString(); |
61 | mSmtpUsername = QString(); | 61 | mSmtpUsername = QString(); |
62 | mSmtpPassword = QString(); | 62 | mSmtpPassword = QString(); |
63 | mCardDavServer = QString(); | ||
64 | mCardDavUsername = QString(); | ||
65 | mCardDavPassword = QString(); | ||
63 | emit changed(); | 66 | emit changed(); |
64 | emit imapResourceChanged(); | 67 | emit imapResourceChanged(); |
65 | emit smtpResourceChanged(); | 68 | emit smtpResourceChanged(); |
69 | emit cardDavResourceChanged(); | ||
66 | 70 | ||
67 | load(); | 71 | load(); |
68 | 72 | ||
@@ -240,6 +244,19 @@ void AccountSettings::loadIdentity() | |||
240 | }).exec(); | 244 | }).exec(); |
241 | } | 245 | } |
242 | 246 | ||
247 | void AccountSettings::loadCardDavResource() | ||
248 | { | ||
249 | Store::fetchOne<SinkResource>(Query().filter<SinkResource::Account>(mAccountIdentifier).containsFilter<SinkResource::Capabilities>(ResourceCapabilities::Mail::storage)) | ||
250 | .then([this](const SinkResource &resource) { | ||
251 | mCardDavIdentifier = resource.identifier(); | ||
252 | mCardDavServer = resource.getProperty("server").toString(); | ||
253 | mCardDavUsername = resource.getProperty("username").toString(); | ||
254 | mCardDavPassword = resource.getProperty("password").toString(); | ||
255 | emit cardDavResourceChanged(); | ||
256 | }).onError([](const KAsync::Error &error) { | ||
257 | qWarning() << "Failed to find the CardDAV resource: " << error.errorMessage; | ||
258 | }).exec(); | ||
259 | } | ||
243 | 260 | ||
244 | 261 | ||
245 | template<typename ResourceType> | 262 | template<typename ResourceType> |
@@ -280,6 +297,15 @@ void AccountSettings::saveImapResource() | |||
280 | }); | 297 | }); |
281 | } | 298 | } |
282 | 299 | ||
300 | void AccountSettings::saveCardDavResource() | ||
301 | { | ||
302 | mCardDavIdentifier = saveResource<CardDavResource>(mAccountIdentifier, mCardDavIdentifier, { | ||
303 | {"server", mCardDavServer}, | ||
304 | {"username", mCardDavUsername}, | ||
305 | {"password", mCardDavPassword}, | ||
306 | }); | ||
307 | } | ||
308 | |||
283 | void AccountSettings::saveMaildirResource() | 309 | void AccountSettings::saveMaildirResource() |
284 | { | 310 | { |
285 | mMaildirIdentifier = saveResource<MaildirResource>(mAccountIdentifier, mMaildirIdentifier, { | 311 | mMaildirIdentifier = saveResource<MaildirResource>(mAccountIdentifier, mMaildirIdentifier, { |
diff --git a/framework/domain/settings/accountsettings.h b/framework/domain/settings/accountsettings.h index f0cecf9b..077b7784 100644 --- a/framework/domain/settings/accountsettings.h +++ b/framework/domain/settings/accountsettings.h | |||
@@ -71,6 +71,7 @@ signals: | |||
71 | void identityChanged(); | 71 | void identityChanged(); |
72 | void pathChanged(); | 72 | void pathChanged(); |
73 | void changed(); | 73 | void changed(); |
74 | void cardDavResourceChanged(); | ||
74 | 75 | ||
75 | protected: | 76 | protected: |
76 | void saveAccount(); | 77 | void saveAccount(); |
@@ -78,12 +79,14 @@ protected: | |||
78 | void saveMaildirResource(); | 79 | void saveMaildirResource(); |
79 | void saveMailtransportResource(); | 80 | void saveMailtransportResource(); |
80 | void saveIdentity(); | 81 | void saveIdentity(); |
82 | void saveCardDavResource(); | ||
81 | 83 | ||
82 | void loadAccount(); | 84 | void loadAccount(); |
83 | void loadImapResource(); | 85 | void loadImapResource(); |
84 | void loadMaildirResource(); | 86 | void loadMaildirResource(); |
85 | void loadMailtransportResource(); | 87 | void loadMailtransportResource(); |
86 | void loadIdentity(); | 88 | void loadIdentity(); |
89 | void loadCardDavResource(); | ||
87 | 90 | ||
88 | void removeAccount(); | 91 | void removeAccount(); |
89 | void removeResource(const QByteArray &identifier); | 92 | void removeResource(const QByteArray &identifier); |
@@ -111,5 +114,10 @@ protected: | |||
111 | QByteArray mIdentityIdentifier; | 114 | QByteArray mIdentityIdentifier; |
112 | QString mUsername; | 115 | QString mUsername; |
113 | QString mEmailAddress; | 116 | QString mEmailAddress; |
117 | |||
118 | QByteArray mCardDavIdentifier; | ||
119 | QString mCardDavServer; | ||
120 | QString mCardDavUsername; | ||
121 | QString mCardDavPassword; | ||
114 | }; | 122 | }; |
115 | 123 | ||