|
|
|
|
@ -21,7 +21,9 @@ |
|
|
|
|
* |
|
|
|
|
*/ |
|
|
|
|
|
|
|
|
|
class OC_LDAP { |
|
|
|
|
define(LDAP_GROUP_MEMBER_ASSOC_ATTR,'memberUid'); |
|
|
|
|
|
|
|
|
|
class OC_LDAP { |
|
|
|
|
static protected $ldapConnectionRes = false; |
|
|
|
|
static protected $configured = false; |
|
|
|
|
|
|
|
|
|
@ -64,6 +66,48 @@ |
|
|
|
|
return $findings; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
/** |
|
|
|
|
* @brief combines the input filters with AND |
|
|
|
|
* @param $filters array, the filters to connect |
|
|
|
|
* @returns the combined filter |
|
|
|
|
* |
|
|
|
|
* Combines Filter arguments with AND |
|
|
|
|
*/ |
|
|
|
|
static public function combineFilterWithAnd($filters) { |
|
|
|
|
return self::combineFilter($filters,'&'); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
/** |
|
|
|
|
* @brief combines the input filters with AND |
|
|
|
|
* @param $filters array, the filters to connect |
|
|
|
|
* @returns the combined filter |
|
|
|
|
* |
|
|
|
|
* Combines Filter arguments with AND |
|
|
|
|
*/ |
|
|
|
|
static public function combineFilterWithOr($filters) { |
|
|
|
|
return self::combineFilter($filters,'|'); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
/** |
|
|
|
|
* @brief combines the input filters with given operator |
|
|
|
|
* @param $filters array, the filters to connect |
|
|
|
|
* @param $operator either & or | |
|
|
|
|
* @returns the combined filter |
|
|
|
|
* |
|
|
|
|
* Combines Filter arguments with AND |
|
|
|
|
*/ |
|
|
|
|
static private function combineFilter($filters, $operator) { |
|
|
|
|
$combinedFilter = '('.$operator; |
|
|
|
|
foreach($filters as $filter) { |
|
|
|
|
if(substr($filter,0,1) != '(') { |
|
|
|
|
$filter = '('.$filter.')'; |
|
|
|
|
} |
|
|
|
|
$combinedFilter.=$filter; |
|
|
|
|
} |
|
|
|
|
$combinedFilter.=')'; |
|
|
|
|
return $combinedFilter; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
/** |
|
|
|
|
* Returns the LDAP handler |
|
|
|
|
*/ |
|
|
|
|
|