1. Added set/unset logininfo which will tell anybody that has this set when
someone has either logged in or out of this node.
2. Added set/pinginterval command which alters the length of time between
-pings sent to nodes.
+pings sent to nodes, the value is minutes < 120 and seconds above that, 0
+means disable pinging (not recommended).
+3. If someone does a sysop whilst connected via ax25, don't show privilege
+level or passwd in stat/user.
+4. Fixed the problem with the dx command where if the callsign ended in a ?
+then the call and the freq would be replicated in the remarks.
+5. Set/unset ann, dx, talk, beep, wx, wwv all are now permanent (ie stored in
+the user file)
19Nov99=======================================================================
1. Added new version of sh/sun and also sh/moon from Steve K9AN
2. Added rtt to who.
#
my ($self, $line) = @_;
-my @f = split /\s+/, $line;
+my @f = split /\s+/, $line, 3;
my $spotter = $self->call;
my $spotted;
my $freq;
if ($f[0] =~ /^by$/i) {
$spotter = uc $f[1];
$line =~ s/^\s*$f[0]\s+$f[1]\s+//;
- shift @f;
- shift @f;
+ $line = $f[2];
+ @f = split /\s+/, $line;
return (1, $self->msg('dx2')) unless @f >= 2;
}
} else {
return (1, $self->msg('dx2'));
}
-$line =~ s/^$f[0]\s+$f[1]\s*//;
+
+# make line the rest of the line
+$line = $f[2];
+@f = split /\s+/, $line;
# bash down the list of bands until a valid one is reached
my $bandref;
my $chan = DXChannel->get($call);
if ($chan) {
$chan->ann(1);
+ $chan->user->wantann(1);
push @out, $self->msg('anns', $call);
} else {
push @out, $self->msg('e3', "Set Announce", $call);
#
my $self = shift;
$self->beep(1);
+$self->user->wantbeep(1);
return (1, $self->msg('beepon'));
my $chan = DXChannel->get($call);
if ($chan) {
$chan->dx(1);
+ $chan->user->wantdx(1);
push @out, $self->msg('dxs', $call);
} else {
push @out, $self->msg('e3', "Set DX Spots", $call);
my $chan = DXChannel->get($call);
if ($chan) {
$chan->talk(1);
+ $chan->user->wanttalk(1);
push @out, $self->msg('talks', $call);
} else {
push @out, $self->msg('e3', "Set Talk", $call);
my $chan = DXChannel->get($call);
if ($chan) {
$chan->wwv(1);
+ $chan->user->wantwwv(1);
push @out, $self->msg('wwvs', $call);
} else {
push @out, $self->msg('e3', "Set WWV", $call);
my $chan = DXChannel->get($call);
if ($chan) {
$chan->wx(1);
+ $chan->user->wantwx(1);
push @out, $self->msg('wxs', $call);
} else {
push @out, $self->msg('e3', "Set WX Spots", $call);
#
my ($self, $line) = @_;
-my @list = split /\s+/, $line; # generate a list of callsigns
-@list = ($self->call) if !@list; # my channel if no callsigns
+my @list = split /\s+/, $line; # generate a list of callsigns
+@list = ($self->call) if !@list; # my channel if no callsigns
my $call;
my @out;
foreach $call (@list) {
- $call = uc $call;
- my $ref = DXUser->get_current($call);
- if ($ref) {
- @out = print_all_fields($self, $ref, "User Information $call");
- } else {
- push @out, "User: $call not found";
- }
- push @out, "" if @list > 1;
+ $call = uc $call;
+ my $ref = DXUser->get_current($call);
+ if ($ref) {
+ if ($self->consort eq 'ax25') {
+ @out = grep { !/(Password|Privilege)/ } print_all_fields($self, $ref, "User Information $call");
+ } else {
+ @out = print_all_fields($self, $ref, "User Information $call");
+ }
+ } else {
+ push @out, "User: $call not found";
+ }
+ push @out, "" if @list > 1;
}
return (1, @out);
my $chan = DXChannel->get($call);
if ($chan) {
$chan->ann(0);
+ $chan->user->wantann(0);
push @out, $self->msg('annu', $call);
} else {
push @out, $self->msg('e3', "Unset Announce", $call);
# $Id$
#
my $self = shift;
+$self->user->wantbeep(0);
$self->beep(0);
return (1, $self->msg('beepoff'));
my $chan = DXChannel->get($call);
if ($chan) {
$chan->dx(0);
+ $chan->user->wantdx(0);
push @out, $self->msg('dxu', $call);
} else {
push @out, $self->msg('e3', "Unset DX Spots", $call);
my $chan = DXChannel->get($call);
if ($chan) {
$chan->talk(0);
+ $chan->user->wanttalk(0);
push @out, $self->msg('talku', $call);
} else {
push @out, $self->msg('e3', "Unset Talk", $call);
my $chan = DXChannel->get($call);
if ($chan) {
$chan->wwv(0);
+ $chan->user->wantwwv(0);
push @out, $self->msg('wwvu', $call);
} else {
push @out, $self->msg('e3', "Unset WWV", $call);
my $chan = DXChannel->get($call);
if ($chan) {
$chan->wx(0);
+ $chan->user->wantwx(0);
push @out, $self->msg('wxu', $call);
} else {
push @out, $self->msg('e3', "Unset WX Spots", $call);
node => '0,Last Node',
homenode => '0,Home Node',
lockout => '9,Locked out?,yesno', # won't let them in at all
- dxok => '9,DX Spots?,yesno', # accept his dx spots?
- annok => '9,Announces?,yesno', # accept his announces?
+ dxok => '9,Accept DX Spots?,yesno', # accept his dx spots?
+ annok => '9,Accept Announces?,yesno', # accept his announces?
reg => '0,Registered?,yesno', # is this user registered?
lang => '0,Language',
hmsgno => '0,Highest Msgno',
my $self = bless {}, $pkg;
$self->{call} = $call;
$self->{'sort'} = 'U';
- $self->{dxok} = 1;
- $self->{annok} = 1;
+ $self->{dxok} = '1';
+ $self->{annok} = '1';
$self->{lang} = $main::lang;
$self->put;
return $self;
my $self = shift;
my $val = shift;
my $s = "want$n";
- $self->{$n} = $val if $val;
- return exists $self->{$n} ? $self->{$n} : 1;
+ $self->{$s} = $val if defined $val;
+ return exists $self->{$s} ? $self->{$s} : 1;
}
sub wantbeep