X-Git-Url: http://dxcluster.org/gitweb/gitweb.cgi?a=blobdiff_plain;f=cmd%2Fset%2Fhere.pl;h=9d2e12be36c895af78cdafc27599f367c3abaea7;hb=refs%2Fheads%2Fmojo;hp=acccbcc4b7693156e9778f5e595b511c7109887e;hpb=07ea293f3919d2da76220b5fbc55b734008ed44c;p=spider.git diff --git a/cmd/set/here.pl b/cmd/set/here.pl index acccbcc4..9d2e12be 100644 --- a/cmd/set/here.pl +++ b/cmd/set/here.pl @@ -3,7 +3,7 @@ # # Copyright (c) 1998 - Dirk Koopman # -# $Id$ +# # my ($self, $line) = @_; @@ -14,13 +14,22 @@ my @out; @args = $self->call if (!@args || $self->priv < 9); foreach $call (@args) { - $call = uc $call; - my $user = ($call eq $self->call) ? $self->user : DXUser->get($call); - if ($user) { - $user->here(1); - push @out, DXM::msg('heres', $call); - } else { - push @out, DXM::msg('e3', "Set Here", $call); - } + $call = uc $call; + my $dxchan = DXChannel::get($call); + if ($dxchan) { + $dxchan->here(1); + push @out, $self->msg('heres', $call); + my $ref = Route::User::get($call); + $ref = Route::Node::get($call) unless $ref; + if ($ref) { + $ref->here(1); + my $s = DXProt::pc24($ref); + DXProt::eph_dup($s); + DXChannel::broadcast_all_nodes($s, $main::me) ; + } + } else { + push @out, $self->msg('e3', "Set Here", $call); + } } + return (1, @out);