X-Git-Url: http://gb7djk.dxcluster.net/gitweb/gitweb.cgi?a=blobdiff_plain;f=perl%2FDXChannel.pm;h=c2358c3dd2366f56e1d7018c23fde7d474bb288d;hb=867c86a1f58144199f3a37a7b58ee8058452cbad;hp=c35d21ca1517d7d286185fbb1d1426d685793397;hpb=1b28f13d136ceecc638e66fa427f226bdca83346;p=spider.git diff --git a/perl/DXChannel.pm b/perl/DXChannel.pm index c35d21ca..c2358c3d 100644 --- a/perl/DXChannel.pm +++ b/perl/DXChannel.pm @@ -128,6 +128,8 @@ $count = 0; next_pc92_update => '9,Next PC92 Update,atime', next_pc92_keepalive => '9,Next PC92 KeepAlive,atime', hostname => '0,Hostname', + isslugged => '9,Still Slugged,yesno', + sluggedpcs => '9,Slugged PCxx Queue,parray', ); $maxerrors = 20; # the maximum number of concurrent errors allowed before disconnection @@ -162,12 +164,14 @@ sub alloc $user->new_buddies unless $user->buddies; $self->{group} = $user->group; $self->{sort} = $user->sort; + $self->{width} = $user->width; } $self->{startt} = $self->{t} = $main::systime; $self->{state} = 0; $self->{oldstate} = 0; $self->{lang} = $main::lang if !$self->{lang}; $self->{func} = ""; + $self->{width} ||= 80; # add in all the dxcc, itu, zone info my @dxcc = Prefix::extract($call); @@ -356,6 +360,11 @@ sub is_rbn return $_[0]->{sort} eq 'N'; } +sub is_dslink +{ + return $_[0]->{sort} eq 'L'; +} + # for perl 5.004's benefit sub sort { @@ -718,6 +727,8 @@ sub process_one $self->enhanced($line); } elsif ($sort eq 'A' || $sort eq 'O' || $sort eq 'W') { $self->start($line, $sort); + } elsif ($sort eq 'C') { + $self->width($line); # change number of columns } elsif ($sort eq 'Z') { $self->disconnect; } elsif ($sort eq 'D') { @@ -759,6 +770,20 @@ sub error_handler } +sub isregistered +{ + my $self = shift; + + # the sysop is registered! + return 1 if $self->{call} eq $main::myalias || $self->{call} eq $main::mycall; + + if ($main::reqreg) { + return $self->{registered}; + } else { + return 1; + } +} + #no strict; sub AUTOLOAD {