X-Git-Url: https://git.tokkee.org/?a=blobdiff_plain;f=gosa-core%2Finclude%2Fclass_userFilter.inc;h=b1ee8224726524993d36f576a5a0143750d94b8a;hb=9540255fc994b107abc71468c306d408e290d7bb;hp=331c6a921ab516f3b42221efe17281acba8cf135;hpb=e3d227b93f0eed9957db9d1d3142fcb6a97adab1;p=gosa.git diff --git a/gosa-core/include/class_userFilter.inc b/gosa-core/include/class_userFilter.inc index 331c6a921..b1ee82247 100644 --- a/gosa-core/include/class_userFilter.inc +++ b/gosa-core/include/class_userFilter.inc @@ -40,8 +40,8 @@ class userFilter extends plugin if(isset($this->attrs['gosaUserDefinedFilter'])){ for($i=0; $i< $this->attrs['gosaUserDefinedFilter']['count']; $i++){ $tmp = userFilter::explodeFilterString($this->attrs['gosaUserDefinedFilter'][$i]); - if(isset($tmp['name'])){ - $this->filters[$tmp['name']]= $tmp; + if(isset($tmp['tag'])){ + $this->filters[$tmp['tag']]= $tmp; } } } @@ -62,13 +62,13 @@ class userFilter extends plugin */ static function explodeFilterString($filterStr) { - list($parent,$categories, $name, $description, $filterList, $flags) = split(";", $filterStr); + list($parent,$categories, $name, $description, $filterList, $flags) = preg_split('/;/', $filterStr); // Ensure that we no empty category in our category list. if(empty($categories)){ $categories = array(); }else{ - $categories = split(',', $categories); + $categories = preg_split('/,/', $categories); } // Ensure that we no empty entry in out flags list. @@ -80,7 +80,7 @@ class userFilter extends plugin // Get filters and their backends $queries = array(); - foreach(split(",", $filterList) as $data){ + foreach(preg_split('/,/', $filterList) as $data){ if(!empty($data)){ list($filter, $backend) = preg_split('/:/', $data); $queries[] = array('backend' => $backend, 'filter' => base64_decode($filter)); @@ -90,10 +90,10 @@ class userFilter extends plugin // build up filter entry. $tmp = array( 'parent' => $parent, - 'name' => $name, + 'tag' => $name, 'categories' => $categories, 'description' => base64_decode($description), - 'queries' => $queries, + 'query' => $queries, 'flags' => $flags); return($tmp); @@ -111,8 +111,8 @@ class userFilter extends plugin $data[$name] = array('data' => array( $filter['parent'], - $filter['name'], - $filter['description'], + $filter['tag'], + htmlentities($filter['description'], ENT_COMPAT, 'UTF-8'), implode(", ",$filter['categories']), implode(", ",$filter['flags']))); } @@ -217,13 +217,13 @@ class userFilter extends plugin while($attrs = $ldap->fetch()){ for($i=0; $i < $attrs['gosaUserDefinedFilter']['count']; $i++){ $tmp = userFilter::explodeFilterString($attrs['gosaUserDefinedFilter'][$i]); - if(!isset($tmp['name'])) continue; + if(!isset($tmp['tag'])) continue; // Remove line breaks from the filter, which may were added for better reading. - foreach($tmp['queries'] as $key => $query){ + foreach($tmp['query'] as $key => $query){ $c = preg_split('/\n/',$query['filter']); foreach($c as $cKey => $str) $c[$cKey] = trim($str); - $tmp['queries'][$key]['filter'] = mb_convert_encoding(implode($c),'UTF-8'); + $tmp['query'][$key]['filter'] = mb_convert_encoding(implode($c),'UTF-8'); } // The filter is visible if it is shared or if is one of our own creations. @@ -233,7 +233,7 @@ class userFilter extends plugin // Add filter if it matches the category list if($visible && (count($category) == 0 || array_intersect($category, $tmp['categories']))){ - $filter[$tmp['name']] = $tmp; + $filter[$tmp['tag']] = $tmp; } } } @@ -250,11 +250,11 @@ class userFilter extends plugin foreach($this->filters as $filter){ $tmp = $filter['parent'].";"; $tmp.= implode(',', $filter['categories']).";"; - $tmp.= $filter['name'].";"; + $tmp.= $filter['tag'].";"; $tmp.= base64_encode($filter['description']).";"; // Add queries - foreach($filter['queries'] as $query){ + foreach($filter['query'] as $query){ $tmp.= base64_encode($query['filter']).":".$query['backend'].","; } $tmp = trim($tmp,",").";";