"; // 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_hostlistAttributes(); $temp_array = explode(";", $attr_string); $hash_table = $_SESSION["ldap"]->attributeHostArray(); 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]; } } // Samba hosts have the attribute "sambaAccount" and end with "$" $filter = "(&(objectClass=sambaAccount) (uid=*$))"; $attrs = $attr_array; $sr = @ldap_search($_SESSION["ldap"]->server(), $_SESSION["config"]->get_HostSuffix(), $filter, $attrs); if ($sr) { $info = ldap_get_entries($_SESSION["ldap"]->server, $sr); ldap_free_result($sr); } else echo ("

" . _("No Samba Hosts found!") . "

"); echo ("
\n"); // print host table echo "\n"; echo ""; // table header for ($k = 0; $k < sizeof($desc_array); $k++) { echo ""; } echo "\n"; // print host 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"); ?>