X-Git-Url: https://git.tokkee.org/?a=blobdiff_plain;f=include%2Fclass_config.inc;h=036872656097e5a8e376521e14ff64081267e1d1;hb=bc81ccefd133ead30e4d43c2be5896df4fb89486;hp=d8d28684e18860b91da9267f428fd5bc162503bb;hpb=2a67eabefa0983a414790d9eac3e1060446dfd88;p=gosa.git diff --git a/include/class_config.inc b/include/class_config.inc index d8d28684e..036872656 100644 --- a/include/class_config.inc +++ b/include/class_config.inc @@ -751,6 +751,46 @@ class config { return FALSE; } + + function __search(&$arr, $name, $return) + { + $return= strtoupper($return); + if (is_array($arr)){ + foreach ($arr as &$a){ + if (isset($a['CLASS']) && strcasecmp($name, $a['CLASS']) == 0){ + return(isset($a[$return])?$a[$return]:""); + } else { + $res= $this->__search ($a, $name, $return); + if ($res != ""){ + return $res; + } + } + } + } + return (""); + } + + + function search($class, $value, $categories= "") + { + if (is_array($categories)){ + foreach ($categories as $category){ + $res= $this->__search($this->data[strtoupper($category)], $class, $value); + if ($res != ""){ + return $res; + } + } + } else { + if ($categories == "") { + return $this->__search($this->data, $class, $value); + } else { + return $this->__search($this->data[strtoupper($categories)], $class, $value); + } + } + + return (""); + } + } // vim:tabstop=2:expandtab:shiftwidth=2:filetype=php:syntax:ruler: