fix show/node
[spider.git] / cmd / show / node.pl
index 66379435d076dcf8628181c0ba6a552cdb002676..f8e711776d9c3ef4afdb017231593d8113641979 100644 (file)
@@ -16,7 +16,6 @@
 
 my ($self, $line) = @_;
 return (1, $self->msg('e5')) unless $self->priv >= 1;
-return (1, $self->msg('storable')) unless $DXUser::v3;
 
 my @call = map {uc $_} split /\s+/, $line; 
 my @out;
@@ -29,9 +28,10 @@ if (@call == 0) {
        shift @call;
        my ($action, $key, $data) = (0,0,0);
        for ($action = DXUser::R_FIRST, $count = 0; !$DXUser::dbm->seq($key, $data, $action); $action = DXUser::R_NEXT) {
-               if ($data =~ m{\01[ACRSX]\0\0\0\04sort}) {
-                   push @call, $key;
-                       ++$count;
+               if (iscallsign($key)) {
+                       if ($data =~ /"sort":"[ACRSX]"/) {
+                               push @call, $key;
+                       }
                }
        }
 }
@@ -39,7 +39,7 @@ if (@call == 0) {
 my $call;
 foreach $call (sort @call) {
        my $clref = Route::Node::get($call);
-       my $uref = DXUser->get_current($call);
+       my $uref = DXUser::get_current($call);
        my ($sort, $ver, $build);
        
        my $pcall = sprintf "%-11s", $call;
@@ -65,6 +65,7 @@ foreach $call (sort @call) {
        } else {
                $ver = $clref->version if $clref && $clref->version;
                $ver = $uref->version if !$ver && $uref->version;
+               $sort = "CCClus" if $ver >= 1000 && $ver < 4000 && $sort eq "Spider";
        }
        
        if ($uref->is_spider || ($clref && $clref->do_pc9x)) {