From c66fbba36646f51ee0c696ffdfa18e5c820c29bc Mon Sep 17 00:00:00 2001 From: Simon Rettberg Date: Thu, 14 Dec 2017 12:55:30 +0100 Subject: [sysconfig] Allow remapping of attributes for AD too --- .../sysconfig/inc/configmodulebaseldap.inc.php | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) (limited to 'modules-available/sysconfig/inc/configmodulebaseldap.inc.php') diff --git a/modules-available/sysconfig/inc/configmodulebaseldap.inc.php b/modules-available/sysconfig/inc/configmodulebaseldap.inc.php index 55104005..d8a41a8b 100644 --- a/modules-available/sysconfig/inc/configmodulebaseldap.inc.php +++ b/modules-available/sysconfig/inc/configmodulebaseldap.inc.php @@ -10,6 +10,27 @@ abstract class ConfigModuleBaseLdap extends ConfigModule 'shareRemapMode', 'shareRemapCreate', 'shareDocuments', 'shareDownloads', 'shareDesktop', 'shareMedia', 'shareOther', 'shareHomeDrive', 'shareDomain', 'credentialPassthrough', 'mapping'); + public static function getMapping($config = false, &$empty = true) + { + $list = array( + ['name' => 'uid', 'field' => 'uid', 'ad' => 'sAMAccountName'], + ['name' => 'uidnumber', 'field' => 'uidnumber', 'ad' => false], + ['name' => 'uncHomePath', 'field' => 'homemount', 'ad' => 'homeDirectory'], + ['name' => 'homeDirectory', 'field' => 'localhome', 'ad' => false], + ['name' => 'posixAccount', 'field' => 'posixAccount', 'ad' => 'user'], + //['name' => 'shadowAccount', 'field' => 'shadowAccount'], + ); + if (is_array($config)) { + foreach ($list as &$item) { + if (!empty($config[$item['field']])) { + $item['value'] = $config[$item['field']]; + $empty = false; + } + } + } + return $list; + } + protected function generateInternal($tgz, $parent) { Trigger::ldadp($this->id(), $parent); -- cgit v1.2.3-55-g7522