Skip to content

Commit

Permalink
allow wipe feature to delete data of a wiped user account
Browse files Browse the repository at this point in the history
Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
  • Loading branch information
mgallien committed Mar 8, 2024
1 parent 2584fdc commit a914f64
Showing 2 changed files with 13 additions and 10 deletions.
5 changes: 3 additions & 2 deletions src/gui/application.cpp
Original file line number Diff line number Diff line change
@@ -438,10 +438,11 @@ Application::~Application()

void Application::setupAccountsAndFolders()
{
const auto accountsRestoreResult = restoreLegacyAccount();

_folderManager.reset(new FolderMan);
FolderMan::instance()->setSyncEnabled(true);

const auto accountsRestoreResult = restoreLegacyAccount();

const auto foldersListSize = FolderMan::instance()->setupFolders();

const auto prettyNamesList = [](const QList<AccountStatePtr> &accounts) {
18 changes: 10 additions & 8 deletions src/gui/remotewipe.cpp
Original file line number Diff line number Diff line change
@@ -34,10 +34,13 @@ RemoteWipe::RemoteWipe(AccountPtr account, QObject *parent)
this, [=](AccountState *) {
_accountRemoved = true;
});
QObject::connect(this, &RemoteWipe::authorized, FolderMan::instance(),
&FolderMan::slotWipeFolderForAccount);
QObject::connect(FolderMan::instance(), &FolderMan::wipeDone, this,
&RemoteWipe::notifyServerSuccessJob);
if (FolderMan::instance()) {
QObject::connect(this, &RemoteWipe::authorized, FolderMan::instance(),
&FolderMan::slotWipeFolderForAccount);
QObject::connect(FolderMan::instance(), &FolderMan::wipeDone, this,
&RemoteWipe::notifyServerSuccessJob);
}

QObject::connect(_account.data(), &Account::appPasswordRetrieved, this,
&RemoteWipe::startCheckJobWithAppPassword);
}
@@ -109,13 +112,12 @@ void RemoteWipe::checkJobSlot()
_account->setRemoteWipeRequested_HACK();
// <-- FIXME MS@2019-12-07

// delete account
manager->deleteAccount(accountState);
manager->save();

// delete data
emit authorized(accountState);

// delete account
manager->deleteAccount(accountState);
manager->save();
} else {
// ask user for his credentials again
accountState->handleInvalidCredentials();

0 comments on commit a914f64

Please sign in to comment.