return $hrfpr;
}
+sub wiki_link($) {
+ my ($in) = @_;
+ $in =~ s#\[\[(.*?)\|(.*?)\]\]#<a href="http://$1">$2</a>#g;
+ $in =~ s#\[\[(.*?)\]\]#<a href="http://$1">$1</a>#g;
+ return $in;
+}
+
+sub item_uplist($) {
+ my ($items) = @_;
+ my $out = undef;
+
+ if (scalar @$items >= 1) {
+ $out = "<ul>".
+ join("", map {
+ "<li>".wiki_link($_)."</li>\n";
+ } sort {my $A=$a; my $B=$b; $A =~ s/[\[\]]//g; $B =~ s/[\[\]]//g; $A cmp $B} @{$items}
+ ).
+ "</ul>";
+ }
+ return $out;
+}
+
$SIG{__DIE__} = \&DieHandler;
my $query = new CGI;
&Util::HTMLSendHeader;
$ldap = Net::LDAP->new($config{ldaphost}) || &Util::HTMLError($!);
+&Util::UpgradeConnection($ldap) unless $config{usessl} eq 'False';
$mesg;
$ldap->bind;
$output{sshrsahostfprint} .= sshfingerprint($key) . "<br>";
}
- # URL
- my ($sponsor, $url) = undef;
- $output{sponsor} = undef;
- foreach $sponsor (@{$data->{sponsor}}) {
- $sponsor =~ m#((http|ftp)://\S+)#i;
- $url = $1;
- $sponsor =~ s/\s*$url\s*//;
- $output{sponsor} .= "<br>" if ($output{sponsor});
- if ($url) {
- $output{sponsor} .= sprintf("<a href=\"%s\">%s</a>", $url, $sponsor);
- } else {
- $output{sponsor} .= $sponsor;
- }
- }
+ my $sponsor = item_uplist($data->{sponsor});
+ $output{sponsor} = $sponsor if defined $sponsor;
+ my $purpose = item_uplist($data->{purpose});
+ $output{purpose} = $purpose if defined $purpose;
- #Reformat purposes to be pleasing for the human eye:
- $output{purpose} = join(",", @{$data->{purpose}});
-
$selected = " selected ";
}
my @sorted;
if ($sortorder eq "asc") {
- @sorted = sort {$summary{$a}->{$sortby} cmp $summary{$b}->{$sortby}} keys(%summary);
+ @sorted = sort {($summary{$a}->{$sortby} cmp $summary{$b}->{$sortby}) || ($summary{$a}->{'host'} cmp $summary{$b}->{'host'})} keys(%summary)
} else {
- @sorted = sort {$summary{$b}->{$sortby} cmp $summary{$a}->{$sortby}} keys(%summary);
+ @sorted = sort {($summary{$b}->{$sortby} cmp $summary{$a}->{$sortby}) || ($summary{$a}->{'host'} cmp $summary{$b}->{'host'})} keys(%summary)
}
foreach $host (@sorted) {
$hostdetails .= "<tr>";