fix(dav): Skip removal of classified activity only once

Was fixed in Nextcloud 16, so future versions should not generate this anymore.
So the delete attempt can be skipped, after doing it once.
We are keeping this to ensure it also runs after migrating from ownCloud

Signed-off-by: Joas Schilling <coding@schilljs.com>
This commit is contained in:
Joas Schilling 2026-05-15 22:20:42 +02:00 committed by backportbot[bot]
parent b9c22da3c9
commit 3cadb8c97e

View file

@ -9,6 +9,7 @@ declare(strict_types=1);
namespace OCA\DAV\Migration;
use OCA\DAV\CalDAV\CalDavBackend;
use OCP\AppFramework\Services\IAppConfig;
use OCP\IDBConnection;
use OCP\Migration\IOutput;
use OCP\Migration\IRepairStep;
@ -17,6 +18,7 @@ class RemoveClassifiedEventActivity implements IRepairStep {
public function __construct(
private IDBConnection $connection,
private IAppConfig $appConfig,
) {
}
@ -31,12 +33,17 @@ class RemoveClassifiedEventActivity implements IRepairStep {
* @inheritdoc
*/
public function run(IOutput $output) {
if ($this->appConfig->getAppValueBool('checked_for_classified_activity')) {
return;
}
if (!$this->connection->tableExists('activity')) {
return;
}
$deletedEvents = $this->removePrivateEventActivity();
$deletedEvents += $this->removeConfidentialUncensoredEventActivity();
$this->appConfig->setAppValueBool('checked_for_classified_activity', true);
$output->info("Removed $deletedEvents activity entries");
}