use FS::Conf;
use FS::Record qw( dbh str2time_sql ); #qsearch qsearchs );
use FS::part_export::sqlradius qw(sqlradius_connect);
+use FS::Password_Mixin;
+use NEXT;
-FS::UID->install_callback(sub { $conf = new FS::Conf });
+FS::UID->install_callback(
+ sub {
+ $conf = new FS::Conf;
+ @pw_set = FS::Password_Mixin->pw_set;
+ }
+);
@ISA = qw(FS::part_export::sqlradius);
$DEBUG = 0;
-@pw_set = ( 'a'..'z', 'A'..'Z', '0'..'9', '(', ')', '#', '.', ',' );
-
tie %options, 'Tie::IxHash',
'datasrc' => { label=>'DBI data source ' },
'username' => { label=>'Database username' },
type => 'select',
options => [qw( radusergroup usergroup )],
},
+ 'ignore_accounting' => {
+ type => 'checkbox',
+ label => 'Ignore accounting records from this database'
+ },
# session report doesn't currently know about this export anyway
# 'hide_ip' => {
# type => 'checkbox',
sub radius_reply {
my($self, $svc_broadband) = (shift, shift);
- my %reply;
+ # start with attributes the service wants
+ my %reply = $self->NEXT::radius_reply($svc_broadband);
+ # add export-specific stuff
if ( length($self->option('ip_addr_as',1))
and length($svc_broadband->ip_addr) ) {
$reply{$self->option('ip_addr_as')} = $svc_broadband->ip_addr;
sub radius_check {
my($self, $svc_broadband) = (shift, shift);
+
+ my %check = $self->SUPER::radius_check($svc_broadband);
my $password_attrib = $conf->config('radius-password') || 'Password';
- my %check;
if ( $self->option('mac_as_password') ) {
$check{$password_attrib} = $self->export_username($svc_broadband);
}
sub _export_suspend {
my( $self, $svc_broadband ) = (shift, shift);
+ return '' if $self->option('skip_provisioning');
+
local $SIG{HUP} = 'IGNORE';
local $SIG{INT} = 'IGNORE';
local $SIG{QUIT} = 'IGNORE';