From 949fc50cc5c2927c08c35ab7e0987ceceb708013 Mon Sep 17 00:00:00 2001 From: Roeland Jago Douma Date: Wed, 27 Sep 2017 12:53:56 +0200 Subject: Dispatch event on User predelete Signed-off-by: Roeland Jago Douma --- lib/private/Server.php | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) (limited to 'lib/private/Server.php') diff --git a/lib/private/Server.php b/lib/private/Server.php index f4f7cb75ad1..0886dfd4413 100644 --- a/lib/private/Server.php +++ b/lib/private/Server.php @@ -133,6 +133,7 @@ use OCP\Share; use OCP\Share\IShareHelper; use Symfony\Component\EventDispatcher\EventDispatcher; use Symfony\Component\EventDispatcher\EventDispatcherInterface; +use Symfony\Component\EventDispatcher\GenericEvent; /** * Class Server @@ -348,6 +349,8 @@ class Server extends ServerContainer implements IServerContainer { $defaultTokenProvider = null; } + $dispatcher = $c->getEventDispatcher(); + $userSession = new \OC\User\Session($manager, $session, $timeFactory, $defaultTokenProvider, $c->getConfig(), $c->getSecureRandom(), $c->getLockdownManager()); $userSession->listen('\OC\User', 'preCreateUser', function ($uid, $password) { \OC_Hook::emit('OC_User', 'pre_createUser', array('run' => true, 'uid' => $uid, 'password' => $password)); @@ -356,9 +359,10 @@ class Server extends ServerContainer implements IServerContainer { /** @var $user \OC\User\User */ \OC_Hook::emit('OC_User', 'post_createUser', array('uid' => $user->getUID(), 'password' => $password)); }); - $userSession->listen('\OC\User', 'preDelete', function ($user) { + $userSession->listen('\OC\User', 'preDelete', function ($user) use ($dispatcher) { /** @var $user \OC\User\User */ \OC_Hook::emit('OC_User', 'pre_deleteUser', array('run' => true, 'uid' => $user->getUID())); + $dispatcher->dispatch('OCP\IUser::preDelete', new GenericEvent($user)); }); $userSession->listen('\OC\User', 'postDelete', function ($user) { /** @var $user \OC\User\User */ -- cgit v1.2.3