diff options
Diffstat (limited to 'httemplate/edit')
-rwxr-xr-x | httemplate/edit/part_svc.cgi | 12 | ||||
-rwxr-xr-x | httemplate/edit/process/part_svc.cgi | 12 |
2 files changed, 16 insertions, 8 deletions
diff --git a/httemplate/edit/part_svc.cgi b/httemplate/edit/part_svc.cgi index b1bb7f3d3..b4900a01c 100755 --- a/httemplate/edit/part_svc.cgi +++ b/httemplate/edit/part_svc.cgi @@ -86,10 +86,10 @@ my %defs = ( select_key => 'svcnum', select_label => 'domain', }, - 'radius_groups' => { - desc =>'ICRADIUS/FreeRADIUS groups', - type =>'radius_usergroup_selector', - }, + 'usergroup' => { + desc =>'ICRADIUS/FreeRADIUS groups', + type =>'radius_usergroup_selector', + }, }, 'svc_domain' => { 'domain' => 'Domain', @@ -138,6 +138,7 @@ my %defs = ( my @fields = defined( $FS::Record::dbdef->table($layer) ) ? grep { $_ ne 'svcnum' } fields($layer) : (); + push @fields, 'usergroup' if $layer eq 'svc_acct'; #kludge foreach my $field (@fields) { my $part_svc_column = $part_svc->part_svc_column($field); my $value = $cgi->param('error') @@ -171,6 +172,9 @@ my %defs = ( $record->getfield($def->{select_label}). '</OPTION>'; } $html .= '</SELECT>'; + } elsif ( $def->{type} eq 'radius_usergroup_selector' ) { + $html .= FS::svc_acct::radius_usergroup_selector( + [ split(',', $value) ], "${layer}__${field}" ); } else { $html .= '<font color="#ff0000">unknown type'. $def->{type}; } diff --git a/httemplate/edit/process/part_svc.cgi b/httemplate/edit/process/part_svc.cgi index 423db93b5..31ab13438 100755 --- a/httemplate/edit/process/part_svc.cgi +++ b/httemplate/edit/process/part_svc.cgi @@ -4,14 +4,18 @@ my $svcpart = $cgi->param('svcpart'); my $old = qsearchs('part_svc',{'svcpart'=>$svcpart}) if $svcpart; +$cgi->param( 'svc_acct__usergroup', + join(',', $cgi->param('svc_acct__usergroup') ) ); + my $new = new FS::part_svc ( { map { $_, scalar($cgi->param($_)); # } qw(svcpart svc svcdb) } ( fields('part_svc'), map { my $svcdb = $_; - map { ( $svcdb.'__'.$_, $svcdb.'__'.$_.'_flag' ) } - fields($svcdb) + my @fields = fields($svcdb); + push @fields, 'usergroup' if $svcdb eq 'svc_acct'; #kludge + map { ( $svcdb.'__'.$_, $svcdb.'__'.$_.'_flag' ) } @fields; } grep defined( $FS::Record::dbdef->table($_) ), qw( svc_acct svc_domain svc_acct_sm svc_forward svc_www ) ) @@ -19,9 +23,9 @@ my $new = new FS::part_svc ( { my $error; if ( $svcpart ) { - $error = $new->replace($old, '1.3-COMPAT'); + $error = $new->replace($old, '1.3-COMPAT', [ 'usergroup' ] ); } else { - $error = $new->insert; + $error = $new->insert( [ 'usergroup' ] ); $svcpart=$new->getfield('svcpart'); } |