Rewrite the display_host_results() function to use spaces instead of

tabs. It does a much better job of aligning the fields in each column
and works in all the browsers, particularly chrome which doesn't
support the tab character.

It still isn't perfect due to the javascript alert() function's
use of a proportional font.
This commit is contained in:
Robert Nelson 2013-11-06 22:54:02 -08:00
parent 90caf54ebf
commit b24622e2d1

View File

@ -150,15 +150,24 @@ if( ($_POST['host']) && ($_POST['dialog_output']) ) {
}
function display_host_results ($address,$hostname,$dns_speeds) {
$map_lengths = function($element) { return array(strlen($element[0]), strlen($element[1])); };
$map_column0 = function($element) { return $element[0]; };
echo gettext("IP Address") . ": {$address} \n";
echo gettext("Host Name") . ": {$hostname} \n";
echo "\n";
echo gettext("Server") . "\t" . gettext("Query Time") . "\n";
if(is_array($dns_speeds))
foreach($dns_speeds as $qt){
echo trim($qt['dns_server']) . "\t" . trim($qt['query_time']);
echo "\n";
$text_table = array();
$text_table[] = array(gettext("Server"), gettext("Query Time"));
if (is_array($dns_speeds)) {
foreach ($dns_speeds as $qt) {
$text_table[] = array(trim($qt['dns_server']), trim($qt['query_time']));
}
}
$length_table = array_map($map_lengths, $text_table);
$col0_padlength = max(array_map($map_column0, $length_table));
foreach ($text_table as $text_row) {
echo str_pad($text_row[0], $col0_padlength + 4) . $text_row[1] . "\n";
}
}
include("head.inc"); ?>