phpldapadmin/htdocs/server_info.php

109 lines
2.5 KiB
PHP

<?php
/**
* Fetches and displays all information that it can from the specified server
*
* @package phpLDAPadmin
* @subpackage Page
*/
/**
*/
require './common.php';
$attrs = $app['server']->getRootDSE();
printf('<h3 class="title">%s%s</h3>',_('Server info for: '),$app['server']->getName());
printf('<h3 class="subtitle">%s</h3>',_('Server reports the following information about itself'));
if (! count($attrs)) {
echo '<br /><br />';
printf('<div style="text-align: center;">%s</div>',_('This server has nothing to report.'));
return;
}
echo '<table class="result" border="0">';
foreach ($attrs as $key => $values) {
if ($key == 'dn')
{
continue;
}
echo '<tr class="list_item"><td class="heading" rowspan="2">';
$sattr = $app['server']->getSchemaAttribute($key);
if ($sattr && $_SESSION[APPCONFIG]->isCommandAvailable('script','schema') && $_SESSION[APPCONFIG]->getValue('appearance','show_schema_link')) {
$href = sprintf('cmd.php?cmd=schema&amp;server_id=%s&amp;view=attributes&amp;viewvalue=%s',$app['server']->getIndex(),$sattr->getName());
printf('<a href="%s" title="%s: %s" >%s</a>',
$href,_('Click to view the schema definition for attribute type'),$sattr->getName(false),$sattr->getName(false));
} else
{
echo $key;
}
echo '</td></tr>';
echo '<tr class="list_item"><td class="blank">&nbsp;</td><td class="value">';
echo '<table class="result" border="0">';
if (is_array($values))
{
foreach ($values as $value)
{
$oidtext = '';
print '<tr>';
if (preg_match('/^[0-9]+\.[0-9]+/', $value))
{
printf('<td rowspan="2" style="width: 5%%; vertical-align:top"><img src="%s/rfc.png" title="%s" alt="%s" /></td>',
IMGDIR,$value,htmlspecialchars($value));
if ($oidtext = support_oid_to_text($value))
{
if (isset($oidtext['ref']))
{
printf('<td><acronym title="%s">%s</acronym></td>',$oidtext['ref'],$oidtext['title']); } else
{
printf('<td>%s</td>', $oidtext['title']);
}
} else
if (strlen($value) > 0)
{
printf('<td><small>%s</small></td>', $value);
}
} else
{
printf('<td rowspan="2" colspan="2">%s</td>',$value);
}
print '</tr>';
if (isset($oidtext['desc']) && trim($oidtext['desc']))
{
printf('<tr><td><small>%s</small></td></tr>', $oidtext['desc']);
} else
{
echo '<tr><td>&nbsp;</td></tr>';
}
if ($oidtext)
{
echo '<tr><td colspan="2">&nbsp;</td></tr>'; }
}
}
else
{
printf('<tr><td colspan="2">%s&nbsp;</td></tr>', $values);
}
echo '</table>';
echo '</td></tr>';
}
echo '</table>';