fiz console.pl resizing
[spider.git] / perl / DXChannel.pm
index a02edc9ee200c69c5624151dc52f4e278458cc7d..f2a1638cdf0c101817bc92a8aa22c795472bf43b 100644 (file)
@@ -159,12 +159,15 @@ sub alloc
                $user->new_buddies unless $user->buddies;
                $self->{group} = $user->group;
                $self->{sort} = $user->sort;
+               $self->{width} = $user->width;
        }
        $self->{startt} = $self->{t} = time;
        $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);
@@ -721,6 +724,8 @@ sub process
                                $dxchan->disconnect;
                        } elsif ($sort eq 'D') {
                                ;                               # ignored (an echo)
+                       } elsif ($sort eq 'C') {
+                               $dxchan->width($line); # change number of columns
                        } elsif ($sort eq 'G') {
                                $dxchan->enhanced($line);
                        } else {
@@ -743,6 +748,20 @@ sub handle_xml
        return $r;
 }
 
+sub registered
+{
+       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
 {