merged back NEW_ROUTE into trunk
[spider.git] / cmd / show / users.pl
index 55a34bec954be8beab2c6c76eaf6920d8b0f961f..46d641edf1430f81cd234284425fdf3a584f9f45 100644 (file)
@@ -7,29 +7,33 @@
 #
 
 my ($self, $line) = @_;
-my @list = map { uc } split /\s+/, $line;           # list of callsigns of nodes
+my @list = map { uc } split /\s+/, $line; # list of callsigns of nodes
 my @out;
-my $node = (DXNode->get($main::mycall));
+my $node = $main::routeroot;
 
 push @out, "Callsigns connected to $main::mycall";
 my $call;
 my $i = 0;
 my @l;
-my $nlist = $node->list;
-my @val = sort {$a->call cmp $b->call} values %{$nlist};
+my @val = sort $node->users;
 foreach $call (@val) {
-  if (@list) {
-    next if !grep $call->call eq $_, @list;
-  } 
-  if ($i >= 5) {
-    push @out, sprintf "%-12s %-12s %-12s %-12s %-12s %-12s", @l;
-       @l = ();
-       $i = 0;
-  }
-  my $s = $call->{call};
-  $s = sprintf "(%s)", $s if $call->{here} == 0;
-  push @l, $s;
-  $i++;
+       if (@list) {
+               next if !grep $call eq $_, @list;
+       } 
+       if ($i >= 5) {
+               push @out, sprintf "%-12s %-12s %-12s %-12s %-12s %-12s", @l;
+               @l = ();
+               $i = 0;
+       }
+       my $uref = Route::User::get($call);
+       my $s = $call;
+       if ($uref) {
+               $s = sprintf "(%s)", $call unless $uref->here;
+       } else {
+               $s = "$call?";
+       }
+       push @l, $s;
+       $i++;
 }
 push @out, sprintf "%-12s %-12s %-12s %-12s %-12s %-12s", @l;