From 8adfc28de73bff0f9e69a581212b220347439f0b Mon Sep 17 00:00:00 2001 From: Tomaz Canabrava Date: Mon, 13 Nov 2017 17:54:19 +0100 Subject: [PATCH] [CSE] Store lock-token and retrieve later --- src/gui/accountsettings.cpp | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/src/gui/accountsettings.cpp b/src/gui/accountsettings.cpp index 3df852492..9faf9eea0 100644 --- a/src/gui/accountsettings.cpp +++ b/src/gui/accountsettings.cpp @@ -272,18 +272,21 @@ void AccountSettings::slotEncryptionFlagError(const QByteArray& fileId, int http void AccountSettings::slotLockFolderSuccess(const QByteArray& fileId, const QByteArray &token) { - FolderMetadata emptyMetadata(accountsState()->account()); + accountsState()->account()->e2e().setTokenForFolder(fileId, token); + FolderMetadata emptyMetadata(accountsState()->account()); auto storeMetadataJob = new StoreMetaDataApiJob(accountsState()->account(), fileId, emptyMetadata.encryptedMetadata()); connect(storeMetadataJob, &StoreMetaDataApiJob::success, this, &AccountSettings::slotUploadMetadataSuccess); connect(storeMetadataJob, &StoreMetaDataApiJob::error, this, &AccountSettings::slotUpdateMetadataError); + + storeMetadataJob->start(); } void AccountSettings::slotUploadMetadataSuccess(const QByteArray& folderId) { - const QByteArray token; // fakeToken, just to compile. + const auto token = accountsState()->account()->e2e().tokenForFolder(folderId); auto unlockJob = new UnlockEncryptFolderApiJob(accountsState()->account(), folderId, token); connect(unlockJob, &UnlockEncryptFolderApiJob::success, this, &AccountSettings::slotUnlockFolderSuccess); @@ -294,7 +297,7 @@ void AccountSettings::slotUploadMetadataSuccess(const QByteArray& folderId) void AccountSettings::slotUpdateMetadataError(const QByteArray& folderId, int httpReturnCode) { - const QByteArray token; // fakeToken, just to compile. + const auto token = accountsState()->account()->e2e().tokenForFolder(folderId); auto unlockJob = new UnlockEncryptFolderApiJob(accountsState()->account(), folderId, token); connect(unlockJob, &UnlockEncryptFolderApiJob::success, this, &AccountSettings::slotUnlockFolderSuccess);