diff options
author | Stephan Orbaugh <62374139+sorbaugh@users.noreply.github.com> | 2025-03-03 16:29:10 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2025-03-03 16:29:10 +0100 |
commit | 3bc3d030482fc5116ad83da6223a723d729fc1b0 (patch) | |
tree | f3f24e537be546bba048913071ec540f53fa4b40 /lib/base.php | |
parent | a9a839c40fbf345d5aab95b138ab04973543da99 (diff) | |
parent | f5b5aec296800e32c426bb9446494e2c0454ef19 (diff) | |
download | nextcloud-server-3bc3d030482fc5116ad83da6223a723d729fc1b0.tar.gz nextcloud-server-3bc3d030482fc5116ad83da6223a723d729fc1b0.zip |
Merge pull request #51000 from nextcloud/fix/federatedfilesharing/group-cleanup
fix(FederatedShareProvider): Delete external shares when groups are deleted or users removed from a group
Diffstat (limited to 'lib/base.php')
-rw-r--r-- | lib/base.php | 12 |
1 files changed, 8 insertions, 4 deletions
diff --git a/lib/base.php b/lib/base.php index a1ff2f0b4dd..44b78ff713e 100644 --- a/lib/base.php +++ b/lib/base.php @@ -7,8 +7,12 @@ declare(strict_types=1); * SPDX-License-Identifier: AGPL-3.0-only */ use OC\Encryption\HookManager; +use OC\Share20\GroupDeletedListener; use OC\Share20\Hooks; +use OC\Share20\UserDeletedListener; +use OC\Share20\UserRemovedListener; use OCP\EventDispatcher\IEventDispatcher; +use OCP\Group\Events\GroupDeletedEvent; use OCP\Group\Events\UserRemovedEvent; use OCP\ILogger; use OCP\IRequest; @@ -18,6 +22,7 @@ use OCP\Security\Bruteforce\IThrottler; use OCP\Server; use OCP\Share; use OCP\User\Events\UserChangedEvent; +use OCP\User\Events\UserDeletedEvent; use OCP\Util; use Psr\Log\LoggerInterface; use Symfony\Component\Routing\Exception\MethodNotAllowedException; @@ -945,12 +950,11 @@ class OC { */ public static function registerShareHooks(\OC\SystemConfig $systemConfig): void { if ($systemConfig->getValue('installed')) { - OC_Hook::connect('OC_User', 'post_deleteUser', Hooks::class, 'post_deleteUser'); - OC_Hook::connect('OC_User', 'post_deleteGroup', Hooks::class, 'post_deleteGroup'); - /** @var IEventDispatcher $dispatcher */ $dispatcher = Server::get(IEventDispatcher::class); - $dispatcher->addServiceListener(UserRemovedEvent::class, \OC\Share20\UserRemovedListener::class); + $dispatcher->addServiceListener(UserRemovedEvent::class, UserRemovedListener::class); + $dispatcher->addServiceListener(GroupDeletedEvent::class, GroupDeletedListener::class); + $dispatcher->addServiceListener(UserDeletedEvent::class, UserDeletedListener::class); } } |