fix a little used logging error for export.
[spider.git] / perl / DXUser.pm
index d2a0a12a31d51b4a519bbd6e4283dac8a0818c2b..3df7fc20b218e42a2afb90da8fa03d0dec82cbf7 100644 (file)
@@ -264,7 +264,7 @@ sub get_current
        my $pkg = shift;
        my $call = uc shift;
   
-       my $dxchan = DXChannel->get($call);
+       my $dxchan = DXChannel::get($call);
        return $dxchan->user if $dxchan;
        my $rref = Route::get($call);
        return $rref->user if $rref && exists $rref->{user};
@@ -482,16 +482,20 @@ print "There are $count user records and $err errors\n";
 
         for ($action = R_FIRST; !$dbm->seq($key, $val, $action); $action = R_NEXT) {
                        if (!is_callsign($key) || $key =~ /^0/) {
-                               Log('DXCommand', "Export Error1: $key\t$val");
+                               my $eval = $val;
+                               my $ekey = $key;
+                               $eval =~ s/([\%\x00-\x1f\x7f-\xff])/sprintf("%%%02X", ord($1))/eg; 
+                               $ekey =~ s/([\%\x00-\x1f\x7f-\xff])/sprintf("%%%02X", ord($1))/eg; 
+                               Log('DXCommand', "Export Error1: $ekey\t$eval");
                                eval {$dbm->del($key)};
-                               dbg(carp("Export Error1: $key\t$val\n$@")) if $@;
+                               dbg(carp("Export Error1: $ekey\t$eval\n$@")) if $@;
                                ++$err;
                                next;
                        }
                        my $ref = decode($val);
                        if ($ref) {
                                my $t = $ref->{lastin} || 0;
-                               if ($main::systime > $t + $tooold) {
+                               if ($ref->{sort} eq 'U' && !$ref->{priv} && $main::systime > $t + $tooold) {
                                        unless ($ref->{lat} && $ref->{long} || $ref->{qth} || $ref->{qra}) {
                                                eval {$dbm->del($key)};
                                                dbg(carp("Export Error2: $key\t$val\n$@")) if $@;
@@ -726,12 +730,6 @@ sub is_node
        return $self->{sort} =~ /[ACRSX]/;
 }
 
-sub is_aranea
-{
-       my $self = shift;
-       return $self->{sort} eq 'W';
-}
-
 sub is_user
 {
        my $self = shift;