2001-10-24 20:47:07 +00:00
|
|
|
#
|
|
|
|
# register a user
|
|
|
|
#
|
|
|
|
# Copyright (c) 2001 Dirk Koopman G1TLH
|
|
|
|
#
|
|
|
|
# $Id$
|
|
|
|
#
|
|
|
|
my ($self, $line) = @_;
|
|
|
|
my @args = split /\s+/, $line;
|
|
|
|
my $call;
|
|
|
|
# my $priv = shift @args;
|
|
|
|
my @out;
|
|
|
|
my $user;
|
|
|
|
my $ref;
|
|
|
|
|
|
|
|
if ($self->priv < 9) {
|
|
|
|
Log('DXCommand', $self->call . " attempted to register @args");
|
|
|
|
return (1, $self->msg('e5'));
|
|
|
|
}
|
2001-10-29 14:48:25 +00:00
|
|
|
return (1, $self->msg('reginac')) unless $main::reqreg;
|
2001-10-24 20:47:07 +00:00
|
|
|
|
|
|
|
foreach $call (@args) {
|
|
|
|
$call = uc $call;
|
2005-01-15 22:03:46 +00:00
|
|
|
unless ($self->remotecmd || $self->inscript) {
|
2001-10-24 20:47:07 +00:00
|
|
|
if ($ref = DXUser->get_current($call)) {
|
|
|
|
$ref->registered(1);
|
|
|
|
$ref->put();
|
|
|
|
push @out, $self->msg("reg", $call);
|
|
|
|
} else {
|
|
|
|
$ref = DXUser->new($call);
|
|
|
|
$ref->registered(1);
|
|
|
|
$ref->put();
|
|
|
|
push @out, $self->msg("regc", $call);
|
|
|
|
}
|
2005-02-20 23:56:18 +00:00
|
|
|
my $dxchan = DXChannel::get($call);
|
2001-10-24 20:47:07 +00:00
|
|
|
$dxchan->registered(1) if $dxchan;
|
|
|
|
Log('DXCommand', $self->call . " registered $call");
|
|
|
|
} else {
|
|
|
|
Log('DXCommand', $self->call . " attempted to register $call remotely");
|
|
|
|
push @out, $self->msg('sorry');
|
|
|
|
}
|
|
|
|
}
|
|
|
|
return (1, @out);
|