1. clear/* node_default and user_default now work.
[spider.git] / cmd / clear / spots.pl
index bdce5c86fc89e5604cf2385b098bb73d067325d6..e2c8a76191e10cb7dbd43d952da546134ea1b5f8 100644 (file)
@@ -13,21 +13,24 @@ my $sort = 'spots';
 my $flag;
 my $fno = 1;
 my $call = $dxchan->call;
+my $f;
 
-my $f = lc shift @f if @f;
 if ($self->priv >= 8) {
-       my $uref = DXUser->get(uc $f);
-       $call = $uref->call if $uref;
-       $f = undef;
-       $f = lc shift @f if @f;
-       if ($f && $f eq 'input') {
+       if (@f && is_callsign(uc $f[0])) {
+               $f = uc shift @f;
+               my $uref = DXUser->get($f);
+               $call = $uref->call if $uref;
+       } elsif (@f && lc $f[0] eq 'node_default' || lc $f[0] eq 'user_default') {
+               $call = lc shift @f;
+       }
+       if (@f && $f[0] eq 'input') {
+               shift @f;
                $flag = 'in';
-               $f = undef;
-               $f = lc shift @f if @f;
        }
 }
 
-$fno = $f if $f;
+$fno = shift @f if @f && $f[0] =~ /^\d|all$/;
+
 my $filter = Filter::read_in($sort, $call, $flag);
 Filter::delete($sort, $call, $flag, $fno);
 $flag = $flag ? "input " : "";