diff options
| author | ivan <ivan> | 2002-11-25 10:46:55 +0000 | 
|---|---|---|
| committer | ivan <ivan> | 2002-11-25 10:46:55 +0000 | 
| commit | f4ea75e514763082b64e1b3654cfbbba2ddf1c01 (patch) | |
| tree | 92436a0a241777e894e68c322231c8a76cd2599d /FS | |
| parent | a2ce67a0ef3090d9c8c117f562f6aeebe4fefc13 (diff) | |
fix disappearing radius group bug, whew
Diffstat (limited to 'FS')
| -rw-r--r-- | FS/FS/svc_acct.pm | 12 | 
1 files changed, 11 insertions, 1 deletions
diff --git a/FS/FS/svc_acct.pm b/FS/FS/svc_acct.pm index c808aeea4..141133403 100644 --- a/FS/FS/svc_acct.pm +++ b/FS/FS/svc_acct.pm @@ -1,7 +1,7 @@  package FS::svc_acct;  use strict; -use vars qw( @ISA $noexport_hack $conf +use vars qw( @ISA $DEBUG $me $noexport_hack $conf               $dir_prefix @shells $usernamemin               $usernamemax $passwordmin $passwordmax               $username_ampersand $username_letter $username_letterfirst @@ -32,6 +32,9 @@ use FS::Msgcat qw(gettext);  @ISA = qw( FS::svc_Common ); +$DEBUG = 0; +$me = '[FS::svc_acct]'; +  #ask FS::UID to run this stuff for us later  $FS::UID::callback{'FS::svc_acct'} = sub {     $conf = new FS::Conf; @@ -496,6 +499,7 @@ sqlradius export only)  sub replace {    my ( $new, $old ) = ( shift, shift );    my $error; +  warn "$me replacing $old with $new\n" if $DEBUG;    return "Username in use"      if $old->username ne $new->username && @@ -522,7 +526,13 @@ sub replace {    local $FS::UID::AutoCommit = 0;    my $dbh = dbh; +  # redundant, but so $new->usergroup gets set +  my $error = $new->check; +  return $error if $error; +    $old->usergroup( [ $old->radius_groups ] ); +  warn "old groups: ". join(' ',@{$old->usergroup}). "\n" if $DEBUG; +  warn "new groups: ". join(' ',@{$new->usergroup}). "\n" if $DEBUG;    if ( $new->usergroup ) {      #(sorta) false laziness with FS::part_export::sqlradius::_export_replace      my @newgroups = @{$new->usergroup};  | 
