* specified attribute
* @param $filters array, the filters that shall be used in the search
* @param $attr the attribute of which a list of values shall be returned
- * @param $lfw bool, whether the last filter is a wildcard which shall not
- * be processed if there were already findings, defaults to true
* @param $maxF string. if not null, this variable will have the filter that
* yields most result entries
* @return mixed, an array with the values on success, false otherwise
*
*/
- public function cumulativeSearchOnAttribute($filters, $attr, $lfw = true, $dnReadLimit = 3, &$maxF = null) {
+ public function cumulativeSearchOnAttribute($filters, $attr, $dnReadLimit = 3, &$maxF = null) {
$dnRead = array();
$foundItems = array();
$maxEntries = 0;
$lastFilter = $filters[count($filters)-1];
}
foreach($filters as $filter) {
- if($lfw && $lastFilter === $filter && count($foundItems) > 0) {
+ if($lastFilter === $filter && count($foundItems) > 0) {
//skip when the filter is a wildcard and results were found
continue;
}
//how deep to dig?
//When looking for objectclasses, testing few entries is sufficient,
- //when looking for group we need to get all names, though.
- if(strtolower($attr) === 'objectclass') {
- $dig = 3;
- } else {
- $dig = 0;
- }
+ $dig = 3;
$availableFeatures =
$this->cumulativeSearchOnAttribute($objectclasses, $attr,
- true, $dig, $maxEntryObjC);
+ $dig, $maxEntryObjC);
if(is_array($availableFeatures)
&& count($availableFeatures) > 0) {
natcasesort($availableFeatures);
# The following expectations are the real test #
$filters = array('f1', 'f2', '*');
- $wizard->cumulativeSearchOnAttribute($filters, 'cn', true, 5);
+ $wizard->cumulativeSearchOnAttribute($filters, 'cn', 5);
unset($uidnumber);
}
# The following expectations are the real test #
$filters = array('f1', 'f2', '*');
- $wizard->cumulativeSearchOnAttribute($filters, 'cn', true, 0);
+ $wizard->cumulativeSearchOnAttribute($filters, 'cn', 0);
unset($uidnumber);
}