/** * @param IUserManager $userManager * @param IGroupManager $groupManager * @param IDBConnection $dbConn */ public function __construct(IUserManager $userManager, IGroupManager $groupManager, IDBConnection $dbConn) { $this->userManager = $userManager; $this->groupManager = $groupManager; $this->dbConn = $dbConn; $this->userManager->listen('\\OC\\User', 'postDelete', function ($user) { $this->post_deleteUser($user); }); $this->groupManager->listen('\\OC\\Group', 'postDelete', function ($group) { $this->post_deleteGroup($group); }); }
/** * To be called from setupFS trough a hook * * Sets up listening to changes made to shares owned by the current user */ public function globalSetup() { $user = $this->userSession->getUser(); if (!$user) { return; } $this->groupManager->listen('\\OC\\Group', 'preAddUser', [$this, 'onPreProcessUser']); $this->groupManager->listen('\\OC\\Group', 'postAddUser', [$this, 'onPostAddUser']); $this->groupManager->listen('\\OC\\Group', 'preRemoveUser', [$this, 'onPreProcessUser']); $this->groupManager->listen('\\OC\\Group', 'postRemoveUser', [$this, 'onPostRemoveUser']); }
/** * @param IUserManager $userSession * @param IGroupManager $groupManager */ private function initListeners($userSession, $groupManager) { $userSession->listen('\\OC\\User', 'preCreateUser', [$this, 'onPreCreateUser']); $userSession->listen('\\OC\\User', 'preDelete', [$this, 'onPreDeleteUser']); $groupManager->listen('\\OC\\Group', 'preCreate', [$this, 'onPreCreateGroup']); $groupManager->listen('\\OC\\Group', 'preDelete', [$this, 'onPreDeleteGroup']); }