Code

cd150dd7ec46f8c5b21300c3b3bc788f0ecfcc43
[gosa.git] / gosa-core / plugins / personal / posix / groupSelect / class_filterLDAPBlacklist.inc
1 <?php
3 class filterLDAPBlacklist {
5   static function query($parent,$base, $scope, $filter, $attributes, $category, $objectStorage= "")
6   {
7     $result = filterLDAP::query($parent,$base, $scope, $filter, $attributes, $category, $objectStorage);
8     return(filterLDAPBlacklist::filterByBlacklist($result));
9   }
11   static function filterByBlacklist($entries)
12   {
13     if(session::is_set('filterBlacklist')){
14       $blist = session::get('filterBlacklist');
15       foreach($blist as $attr_name => $attr_values){
16         foreach($attr_values as $match){
17           foreach($entries as $id => $entry){
18             if(isset($entry[$attr_name])){
19               $test = $entry[$attr_name];
20               if(!is_array($test)) $test = array($test);
21               if(in_array($match, $test)) unset($entries[$id]);
22             }
23           }
24         }
25       }
26     }
27     return(array_values($entries));
28   }
29 }
31 ?>