use vars qw(@ISA %info $radusers);
use Tie::IxHash;
use FS::part_export::sqlradius;
+use FS::DBI;
tie my %options, 'Tie::IxHash', %FS::part_export::sqlradius::options;
'desc' => 'Real-time export to RADIATOR',
'options' => \%options,
'nodomain' => '',
+ 'no_machine' => 1,
+ 'default_svc_class' => 'Internet',
'notes' => <<'END',
Real-time export of the <b>radusers</b> table to any SQL database in
<a href="http://www.open.com.au/radiator/">Radiator</a>-native format.
my( $self, $svc_acct ) = @_;
my %hash = (
'username' => $self->export_username($svc_acct),
- 'pass_word' => $svc_acct->_password,
+ 'pass_word' => $svc_acct->crypt_password,
'fullname' => $svc_acct->finger,
map { my $method = "radius_$_"; $_ => $svc_acct->$method(); }
qw( framed_filter_id framed_mtu framed_netmask framed_protocol
$hash{'servicename'} = ( $svc_acct->radius_groups )[0];
- my $cust_pkg = $self->cust_svc->cust_pkg;
- $hash{validto} = $cust_pkg->bill
+ my $cust_pkg = $svc_acct->cust_svc->cust_pkg;
+ $hash{'validto'} = $cust_pkg->bill
if $cust_pkg && $cust_pkg->part_pkg->is_prepaid && $cust_pkg->bill;
#some other random stuff, should probably be attributes or virtual fields
if $cust_pkg && $cust_pkg->setup;
$hash{'validfrom'} = $cust_pkg->last_bill || $cust_pkg->setup
if $cust_pkg && ( $cust_pkg->last_bill || $cust_pkg->setup );
+ $hash{'state'} = $cust_pkg->susp ? 1 : 0
+ if $cust_pkg;
%hash;
}
sub radiator_connect {
#my($datasrc, $username, $password) = @_;
#DBI->connect($datasrc, $username, $password) or die $DBI::errstr;
- DBI->connect(@_) or die $DBI::errstr;
+ FS::DBI->connect(@_) or die $FS::DBI::errstr;
}
1;