X-Git-Url: http://gb7djk.dxcluster.net/gitweb/gitweb.cgi?a=blobdiff_plain;f=cmd%2Fstat%2Froute_node.pl;h=c546e60167112ba666371d1770bd25fb2479b492;hb=412fb1b9e4070d7791f4e986b55bbc0c06f612ea;hp=1cedcb4409a47674c3cc1e4c5c6e2850a0bb7364;hpb=60d889442d24ab5567fe0b6c9bb923f4297a07bd;p=spider.git diff --git a/cmd/stat/route_node.pl b/cmd/stat/route_node.pl index 1cedcb44..c546e601 100644 --- a/cmd/stat/route_node.pl +++ b/cmd/stat/route_node.pl @@ -7,18 +7,31 @@ # my ($self, $line) = @_; +my @out; my @list = split /\s+/, $line; # generate a list of callsigns @list = ($self->call) if !@list; # my channel if no callsigns +if ($self->priv > 5 && @list && uc $list[0] eq 'ALL') { + push @out, "Node Callsigns in Routing Table"; + @list = sort map {$_->call} Route::Node::get_all(); + my $count = @list; + my $n = int $self->width / 10; + $n ||= 8; + while (@list > $n) { + push @out, join(' ', map {sprintf "%9s",$_ } splice(@list, 0, $n)); + } + push @out, join(' ', map {sprintf "%9s",$_ } @list) if @list; + push @out, "$count Nodes"; + return (1, @out); +} my $call; -my @out; foreach $call (@list) { $call = uc $call; my $ref = Route::Node::get($call); if ($ref) { @out = print_all_fields($self, $ref, "Route::Node Information $call"); } else { - push @out, "Route::User: $call not found"; + push @out, "Route::Node: $call not found"; } push @out, "" if @list > 1; }