#
# Copyright (c) 1998 - Dirk Koopman G1TLH
#
-# $Id$
+#
#
package DXUser;
use strict;
-use vars qw($VERSION $BRANCH);
-$VERSION = sprintf( "%d.%03d", q$Revision$ =~ /(\d+)\.(\d+)/ );
-$BRANCH = sprintf( "%d.%03d", q$Revision$ =~ /\d+\.\d+\.(\d+)\.(\d+)/ || (0,0));
-$main::build += $VERSION;
-$main::branch += $BRANCH;
-
use vars qw(%u $dbm $filename %valid $lastoperinterval $lasttime $lru $lrusize $tooold $v3);
%u = ();
wantdxcq => '0,Show CQ Zone,yesno',
wantdxitu => '0,Show ITU Zone,yesno',
wantgtk => '0,Want GTK interface,yesno',
+ wantpc9x => '0,Want PC9X interface,yesno',
lastoper => '9,Last for/oper,cldatetime',
nothere => '0,Not Here Text',
registered => '9,Registered?,yesno',
sub get
{
- my $pkg = shift;
my $call = uc shift;
my $data;
# search for it
unless ($dbm->get($call, $data)) {
$ref = decode($data);
+ dbg("DXUser::get: data error on $call $!") unless $ref;
+ if ($ref && ref $ref ne 'DXUser') {
+ dbg("DXUser::get: got strange answer from decode ". ref $ref. " ignoring");
+ return undef;
+ }
$lru->put($call, $ref);
return $ref;
}
sub get_current
{
- my $pkg = shift;
my $call = uc shift;
my $dxchan = DXChannel::get($call);
return $dxchan->user if $dxchan;
- my $rref = Route::get($call);
- return $rref->user if $rref && exists $rref->{user};
- return $pkg->get($call);
+ return get($call);
}
#
return _want('gtk', @_);
}
+sub wantpc9x
+{
+ return _want('pc9x', @_);
+}
+
sub wantlogininfo
{
my $self = shift;