ImportSourceLdap: allow to fetch dn as a column

This commit is contained in:
Thomas Gelf 2016-02-17 10:00:40 +01:00
parent 5b3b5cbfb8
commit 2a173b7cd3

View File

@ -13,7 +13,9 @@ class ImportSourceLdap extends ImportSourceHook
public function fetchData() public function fetchData()
{ {
$query = $this->connection()->select()->from($this->settings['objectclass'], $this->listColumns()); $columns = $this->listColumns();
$query = $this->connection()->select()->from($this->settings['objectclass'], $columns);
if ($base = $this->settings['base']) { if ($base = $this->settings['base']) {
$query->setBase($base); $query->setBase($base);
} }
@ -21,7 +23,16 @@ class ImportSourceLdap extends ImportSourceHook
$query->setNativeFilter($filter); $query->setNativeFilter($filter);
} }
return $query->fetchAll(); if (in_array('dn', $columns)) {
$result = $query->fetchAll();
foreach ($result as $dn => $row) {
$row->dn = $dn;
}
return $result;
} else {
return $query->fetchAll();
}
} }
public function listColumns() public function listColumns()