From 7cf5edc74a36d0d991aab83371b96a4c860a1ab4 Mon Sep 17 00:00:00 2001 From: the-djmaze <> Date: Wed, 17 Jan 2024 01:58:49 +0100 Subject: [PATCH] Alsp check global AddressBook.sqlite on ClearUserData() --- snappymail/v/0.0.0/app/libraries/RainLoop/Api.php | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/snappymail/v/0.0.0/app/libraries/RainLoop/Api.php b/snappymail/v/0.0.0/app/libraries/RainLoop/Api.php index 5b8e8796b..f1d3de2fc 100644 --- a/snappymail/v/0.0.0/app/libraries/RainLoop/Api.php +++ b/snappymail/v/0.0.0/app/libraries/RainLoop/Api.php @@ -111,9 +111,13 @@ abstract class Api $oStorageProvider->DeleteStorage($sEmail); } - $oAddressBookProvider = static::Actions()->AddressBookProvider(); - if ($oAddressBookProvider) { - $oAddressBookProvider->DeleteAllContacts($sEmail); + $oConfig = static::Config(); + $sqlite_global = $oConfig->Get('contacts', 'sqlite_global', false); + if ('sqlite' != $oConfig->Get('contacts', 'type', '') || \is_file(APP_PRIVATE_DATA . '/AddressBook.sqlite')) { + $oConfig->Set('contacts', 'sqlite_global', true); + $oAddressBookProvider = static::Actions()->AddressBookProvider(); + $oAddressBookProvider && $oAddressBookProvider->DeleteAllContacts($sEmail); + $oConfig->Set('contacts', 'sqlite_global', !!$sqlite_global); } return true;