diff options
author | Thomas Müller <thomas.mueller@tmit.eu> | 2016-01-19 15:48:38 +0100 |
---|---|---|
committer | Thomas Müller <thomas.mueller@tmit.eu> | 2016-01-20 15:21:33 +0100 |
commit | 77069f5582ad42207ee9a9620cba5720390d9e79 (patch) | |
tree | bf1ac115fd972c6d061a2f50df903491c02f97e8 /apps/user_ldap/lib | |
parent | 51b50bd26049eed0d4335ae5f5282f53df0189a1 (diff) | |
download | nextcloud-server-77069f5582ad42207ee9a9620cba5720390d9e79.tar.gz nextcloud-server-77069f5582ad42207ee9a9620cba5720390d9e79.zip |
Use IUser::setEMailAddress in ldap as well
Diffstat (limited to 'apps/user_ldap/lib')
-rw-r--r-- | apps/user_ldap/lib/jobs.php | 3 | ||||
-rw-r--r-- | apps/user_ldap/lib/proxy.php | 4 | ||||
-rw-r--r-- | apps/user_ldap/lib/user/manager.php | 29 | ||||
-rw-r--r-- | apps/user_ldap/lib/user/user.php | 29 |
4 files changed, 40 insertions, 25 deletions
diff --git a/apps/user_ldap/lib/jobs.php b/apps/user_ldap/lib/jobs.php index b27f66055a3..47e28470188 100644 --- a/apps/user_ldap/lib/jobs.php +++ b/apps/user_ldap/lib/jobs.php @@ -175,7 +175,8 @@ class Jobs extends \OC\BackgroundJob\TimedJob { new LogWrapper(), \OC::$server->getAvatarManager(), new \OCP\Image(), - $dbc); + $dbc, + \OC::$server->getUserManager()); $connector = new Connection($ldapWrapper, $configPrefixes[0]); $ldapAccess = new Access($connector, $ldapWrapper, $userManager); $groupMapper = new GroupMapping($dbc); diff --git a/apps/user_ldap/lib/proxy.php b/apps/user_ldap/lib/proxy.php index 28233748790..082ba9a93d0 100644 --- a/apps/user_ldap/lib/proxy.php +++ b/apps/user_ldap/lib/proxy.php @@ -61,6 +61,7 @@ abstract class Proxy { static $userMap; static $groupMap; static $db; + static $userManager; if(is_null($fs)) { $ocConfig = \OC::$server->getConfig(); $fs = new FilesystemHelper(); @@ -69,9 +70,10 @@ abstract class Proxy { $db = \OC::$server->getDatabaseConnection(); $userMap = new UserMapping($db); $groupMap = new GroupMapping($db); + $userManager = \OC::$server->getUserManager(); } $userManager = - new user\Manager($ocConfig, $fs, $log, $avatarM, new \OCP\Image(), $db); + new user\Manager($ocConfig, $fs, $log, $avatarM, new \OCP\Image(), $db, $userManager); $connector = new Connection($this->ldap, $configPrefix); $access = new Access($connector, $this->ldap, $userManager); $access->setUserMapper($userMap); diff --git a/apps/user_ldap/lib/user/manager.php b/apps/user_ldap/lib/user/manager.php index dcaf40b80c4..cfa333b06d4 100644 --- a/apps/user_ldap/lib/user/manager.php +++ b/apps/user_ldap/lib/user/manager.php @@ -29,6 +29,11 @@ use OCA\user_ldap\lib\user\User; use OCA\user_ldap\lib\LogWrapper; use OCA\user_ldap\lib\FilesystemHelper; use OCA\user_ldap\lib\user\OfflineUser; +use OCP\IAvatarManager; +use OCP\IConfig; +use OCP\IDBConnection; +use OCP\Image; +use OCP\IUserManager; /** * Manager @@ -40,10 +45,10 @@ class Manager { /** @var IUserTools */ protected $access; - /** @var \OCP\IConfig */ + /** @var IConfig */ protected $ocConfig; - /** @var \OCP\IDBConnection */ + /** @var IDBConnection */ protected $db; /** @var FilesystemHelper */ @@ -52,7 +57,7 @@ class Manager { /** @var LogWrapper */ protected $ocLog; - /** @var \OCP\Image */ + /** @var Image */ protected $image; /** @param \OCP\IAvatarManager */ @@ -69,18 +74,19 @@ class Manager { ); /** - * @param \OCP\IConfig $ocConfig + * @param IConfig $ocConfig * @param \OCA\user_ldap\lib\FilesystemHelper $ocFilesystem object that * gives access to necessary functions from the OC filesystem * @param \OCA\user_ldap\lib\LogWrapper $ocLog - * @param \OCP\IAvatarManager $avatarManager - * @param \OCP\Image $image an empty image instance - * @param \OCP\IDBConnection $db + * @param IAvatarManager $avatarManager + * @param Image $image an empty image instance + * @param IDBConnection $db * @throws \Exception when the methods mentioned above do not exist */ - public function __construct(\OCP\IConfig $ocConfig, - FilesystemHelper $ocFilesystem, LogWrapper $ocLog, - \OCP\IAvatarManager $avatarManager, \OCP\Image $image, \OCP\IDBConnection $db) { + public function __construct(IConfig $ocConfig, + FilesystemHelper $ocFilesystem, LogWrapper $ocLog, + IAvatarManager $avatarManager, Image $image, + IDBConnection $db, IUserManager $userManager) { $this->ocConfig = $ocConfig; $this->ocFilesystem = $ocFilesystem; @@ -88,6 +94,7 @@ class Manager { $this->avatarManager = $avatarManager; $this->image = $image; $this->db = $db; + $this->userManager = $userManager; } /** @@ -110,7 +117,7 @@ class Manager { $this->checkAccess(); $user = new User($uid, $dn, $this->access, $this->ocConfig, $this->ocFilesystem, clone $this->image, $this->ocLog, - $this->avatarManager); + $this->avatarManager, $this->userManager); $this->users['byDN'][$dn] = $user; $this->users['byUid'][$uid] = $user; return $user; diff --git a/apps/user_ldap/lib/user/user.php b/apps/user_ldap/lib/user/user.php index a0efeedb886..13f88aa6507 100644 --- a/apps/user_ldap/lib/user/user.php +++ b/apps/user_ldap/lib/user/user.php @@ -27,6 +27,9 @@ use OCA\user_ldap\lib\user\IUserTools; use OCA\user_ldap\lib\Connection; use OCA\user_ldap\lib\FilesystemHelper; use OCA\user_ldap\lib\LogWrapper; +use OCP\IAvatarManager; +use OCP\IConfig; +use OCP\IUserManager; /** * User @@ -43,7 +46,7 @@ class User { */ protected $connection; /** - * @var \OCP\IConfig + * @var IConfig */ protected $config; /** @@ -59,10 +62,13 @@ class User { */ protected $log; /** - * @var \OCP\IAvatarManager + * @var IAvatarManager */ protected $avatarManager; - + /** + * @var IUserManager + */ + protected $userManager; /** * @var string */ @@ -92,15 +98,16 @@ class User { * @param string $dn the LDAP DN * @param IUserTools $access an instance that implements IUserTools for * LDAP interaction - * @param \OCP\IConfig $config + * @param IConfig $config * @param FilesystemHelper $fs * @param \OCP\Image $image any empty instance * @param LogWrapper $log - * @param \OCP\IAvatarManager $avatarManager + * @param IAvatarManager $avatarManager + * @param IUserManager $userManager */ public function __construct($username, $dn, IUserTools $access, - \OCP\IConfig $config, FilesystemHelper $fs, \OCP\Image $image, - LogWrapper $log, \OCP\IAvatarManager $avatarManager) { + IConfig $config, FilesystemHelper $fs, \OCP\Image $image, + LogWrapper $log, IAvatarManager $avatarManager, IUserManager $userManager) { $this->access = $access; $this->connection = $access->getConnection(); @@ -111,6 +118,7 @@ class User { $this->image = $image; $this->log = $log; $this->avatarManager = $avatarManager; + $this->userManager = $userManager; } /** @@ -400,11 +408,8 @@ class User { } } if(!is_null($email)) { - // - // TODO: user IUser::setEMailAddress() - // - $this->config->setUserValue( - $this->uid, 'settings', 'email', $email); + $user = $this->userManager->get($this->uid); + $user->setEMailAddress($email); } } |