"; // generate attribute-description table $attr_array; // list of LDAP attributes to show $desc_array; // list of descriptions for the attributes $attr_string = $_SESSION["config"]->get_grouplistAttributes(); $temp_array = explode(";", $attr_string); $hash_table = $_SESSION["ldap"]->attributeGroupArray(); for ($i = 0; $i < sizeof($temp_array); $i++) { // if value is predifined, look up description in hash_table if (substr($temp_array[$i],0,1) == "#") { $attr = substr($temp_array[$i],1); $attr_array[$i] = $attr; $desc_array[] = $hash_table[$attr]; } // if not predefined, the attribute is seperated by a ":" from description else { $attr = explode(":", $temp_array[$i]); $attr_array[$i] = $attr[0]; $desc_array[$i] = $attr[1]; } } // Groups have the attribute "posixGroup" $filter = "(objectClass=posixGroup)"; $attrs = array("cn", "gidNumber", "memberUID", "description"); $sr = @ldap_search($_SESSION["ldap"]->server(), $_SESSION["config"]->get_GroupSuffix(), $filter, $attrs); if ($sr) { $info = ldap_get_entries($_SESSION["ldap"]->server, $sr); ldap_free_result($sr); if ($info["count"] == 0) echo ("

" . _("No Grous found!") . "

"); } else echo ("

" . _("LDAP Search failed! Please check your preferences.
No Groups found!") . "


"); // print host table header echo "\n"; echo ""; // table header for ($k = 0; $k < sizeof($desc_array); $k++) { echo ""; } echo "\n"; echo ("\n"); // print group list for ($i = 0; $i < sizeof($info)-1; $i++) { // ignore last entry in array which is "count" echo(""); for ($k = 0; $k < sizeof($attr_array); $k++) { echo (""); } echo("\n"); } echo ("
" . $desc_array[$k] . "
"); // print all attribute entries seperated by "; " if (sizeof($info[$i][strtolower($attr_array[$k])]) > 0) { array_shift($info[$i][strtolower($attr_array[$k])]); echo implode("; ", $info[$i][strtolower($attr_array[$k])]); } echo ("
"); echo ("

 

\n"); echo ("

 

\n"); echo (""); echo ("\n"); echo ("
"); echo (" "); echo (" 
\n"); echo ("\n"); ?>