\n"; echo "\n"; echo "\n"; echo "\n"; // 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!") . "


"); echo ("
\n"); // print group table header echo "\n"; echo ""; // table header for ($k = 0; $k < sizeof($desc_array); $k++) { echo ""; } 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] . "
" . _("Edit") . ""); // print all attribute entries seperated by "; " if (sizeof($info[$i][strtolower($attr_array[$k])]) > 0) { array_shift($info[$i][strtolower($attr_array[$k])]); // generate links for group members if (strtolower($attr_array[$k]) == "memberuid") { $linklist = array(); for ($d = 0; $d < sizeof($info[$i][strtolower($attr_array[$k])]); $d++) { $user = $info[$i][strtolower($attr_array[$k])][$d]; // user name $dn = $_SESSION["ldap"]->search_username($user); // DN entry // if user was found in LDAP make link, otherwise just print name if ($dn) { $linklist[$d] = "" . $info[$i][strtolower($attr_array[$k])][$d] . ""; } else $linklist[$d] = $user; } echo implode("; ", $linklist); } // print all other attributes else { echo implode("; ", $info[$i][strtolower($attr_array[$k])]); } } echo ("
"); echo ("

 

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