fix a few typos
[spider.git] / perl / DXCommandmode.pm
index 6306226d7e6862f87b4ae61c02753e36e3094961..6e7a0944f5461c109d9b4a5d6a5106ba2092515b 100644 (file)
@@ -384,29 +384,20 @@ sub process
 #
 # finish up a user context
 #
-sub finish
+sub disconnect
 {
        my $self = shift;
-       my $conn = shift;
        my $call = $self->call;
 
+       # reset the redirection of messages back to 'normal' if we are the sysop
+       if ($call eq $main::myalias) {
+               my $node = DXNode->get($main::mycall) or die "$main::mycall not allocated in DXNode database";
+               $node->dxchan($DXProt::me);
+       }
+
        # I was the last node visited
     $self->user->node($main::mycall);
                
-       # log out text
-       if ($conn && -e "$main::data/logout") {
-               open(I, "$main::data/logout") or confess;
-               my @in = <I>;
-               close(I);
-               $self->send_now('D', @in);
-               sleep(1);
-       }
-
-#      if ($call eq $main::myalias) { # unset the channel if it is us really
-#              my $node = DXNode->get($main::mycall);
-#              $node->{dxchan} = 0;
-#      }
-       
        # issue a pc17 to everybody interested
        my $nchan = DXChannel->get($main::mycall);
        my $pc17 = $nchan->pc17($self);
@@ -418,6 +409,8 @@ sub finish
        Log('DXCommand', "$call disconnected");
        my $ref = DXCluster->get_exact($call);
        $ref->del() if $ref;
+
+       $self->SUPER::disconnect;
 }
 
 #