@ISA = qw(FS::part_export);
@EXPORT_OK = qw( sqlradius_connect );
-$DEBUG = 0;
+$DEBUG = 1;
my %groups;
tie %options, 'Tie::IxHash',
sub rebless { shift; }
-sub export_username {
+sub export_username { # override for other svcdb
my($self, $svc_acct) = (shift, shift);
warn "export_username called on $self with arg $svc_acct" if $DEBUG > 1;
$svc_acct->username;
}
+sub radius_reply { #override for other svcdb
+ my($self, $svc_acct) = (shift, shift);
+ $svc_acct->radius_reply;
+}
+
+sub radius_check { #override for other svcdb
+ my($self, $svc_acct) = (shift, shift);
+ $svc_acct->radius_check;
+}
+
sub _export_insert {
my($self, $svc_x) = (shift, shift);
foreach my $table (qw(reply check)) {
my $method = "radius_$table";
- my %attrib = $svc_x->$method();
+ my %attrib = $self->$method($svc_x);
next unless keys %attrib;
my $err_or_queue = $self->sqlradius_queue( $svc_x->svcnum, 'insert',
$table, $self->export_username($svc_x), %attrib );
% )
% } fields($layer);
% }
-% push @fields, 'usergroup' if $layer eq 'svc_acct'; #kludge
+% push @fields, 'usergroup'
+% if $layer eq 'svc_acct'
+% or ( $layer eq 'svc_broadband' and
+% $conf->exists('svc_broadband-radius') ); # double kludge
+% # (but we do want to check the config, right?)
% $part_svc->svcpart($clone) if $clone; #haha, undone below
%
%
% 'curr_value' => $value,
% 'element_name' => "${layer}__${field}",
% 'element_etc' => $disabled,
-% 'multiple' => ($flag eq 'S'),
+% 'multiple' => ($def->{multiple} ||
+% $flag eq 'S'),
+% # allow the table def to force 'multiple'
% );
%
% } elsif ( $def->{type} eq 'communigate_pro-accessmodes' ) {
die "access denied"
unless $FS::CurrentUser::CurrentUser->access_right('Configuration');
+my $conf = FS::Conf->new;
my $part_svc;
my $clone = '';
if ( $cgi->param('clone') && $cgi->param('clone') =~ /^(\d+)$/ ) {#clone