diff --git a/src/FederationServer/Classes/Enums/AuditLogType.php b/src/FederationServer/Classes/Enums/AuditLogType.php index a76f44b..f092fa5 100644 --- a/src/FederationServer/Classes/Enums/AuditLogType.php +++ b/src/FederationServer/Classes/Enums/AuditLogType.php @@ -19,4 +19,6 @@ case ENTITY_DISCOVERED = 'ENTITY_DISCOVERED'; case ENTITY_BLACKLISTED = 'ENTITY_BLACKLISTED'; case ENTITY_UNBLACKLISTED = 'ENTITY_UNBLACKLISTED'; + + case BLACKLIST_RECORD_DELETED = 'BLACKLIST_RECORD_DELETED'; } \ No newline at end of file diff --git a/src/FederationServer/Methods/Blacklist/DeleteBlacklist.php b/src/FederationServer/Methods/Blacklist/DeleteBlacklist.php index c2759af..22fdb79 100644 --- a/src/FederationServer/Methods/Blacklist/DeleteBlacklist.php +++ b/src/FederationServer/Methods/Blacklist/DeleteBlacklist.php @@ -3,6 +3,8 @@ namespace FederationServer\Methods\Blacklist; use FederationServer\Classes\Configuration; + use FederationServer\Classes\Enums\AuditLogType; + use FederationServer\Classes\Managers\AuditLogManager; use FederationServer\Classes\Managers\BlacklistManager; use FederationServer\Classes\RequestHandler; use FederationServer\Classes\Validate; @@ -36,12 +38,19 @@ try { - if(!BlacklistManager::blacklistExists($blacklistUuid)) + $blacklistRecord = BlacklistManager::getBlacklistEntry($blacklistUuid); + if($blacklistRecord === null) { throw new RequestException('Blacklist record not found', 404); } BlacklistManager::deleteBlacklistRecord($blacklistUuid); + AuditLogManager::createEntry(AuditLogType::BLACKLIST_RECORD_DELETED, sprintf( + 'Blacklist record %s deleted by %s (%s)', + $blacklistUuid, + $authenticatedOperator->getName(), + $authenticatedOperator->getUuid() + ), $authenticatedOperator->getUuid(), $blacklistRecord->getEntity()); } catch (DatabaseOperationException $e) {