X-Git-Url: http://git.freeside.biz/gitweb/?a=blobdiff_plain;f=httemplate%2Fedit%2Fpart_svc.cgi;h=3540a421e90b9245881589fdac581e6f22133702;hb=ca1b5151cb9093fcb49de2ffd885754e1a5d5d48;hp=befd9b24a47c3913e3783489437878f258ce846f;hpb=f7fd2a3e34da751cbc02bbf215e99c6dc89adc15;p=freeside.git diff --git a/httemplate/edit/part_svc.cgi b/httemplate/edit/part_svc.cgi index befd9b24a..3540a421e 100755 --- a/httemplate/edit/part_svc.cgi +++ b/httemplate/edit/part_svc.cgi @@ -1,52 +1,7 @@ <% my $part_svc; my $clone = ''; -my $error = ''; -if ( $cgi->param('magic') eq 'process' ) { - - 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 = $_; - 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_forward svc_www svc_broadband ) - ) - } ); - - my %exportnums = - map { $_->exportnum => ( $cgi->param('exportnum'.$_->exportnum) || '') } - qsearch('part_export', {} ); - - if ( $svcpart ) { - $error = $new->replace($old, '1.3-COMPAT', [ 'usergroup' ], \%exportnums ); - } else { - $error = $new->insert( [ 'usergroup' ], \%exportnums ); - $svcpart = $new->getfield('svcpart'); - } - - unless ( $error ) { #no error, redirect - #print $cgi->redirect(popurl(3)."browse/part_svc.cgi"); - print $cgi->redirect("${p}browse/part_svc.cgi"); - myexit; - } - - $part_svc = $new; #?? - #$part_svc = new FS::part_svc ( { - # map { $_, scalar($cgi->param($_)) } fields('part_svc') - #} ); - -} elsif ( $cgi->param('clone') && $cgi->param('clone') =~ /^(\d+)$/ ) {#clone +if ( $cgi->param('clone') && $cgi->param('clone') =~ /^(\d+)$/ ) {#clone #$cgi->param('clone') =~ /^(\d+)$/ or die "malformed query: $query"; $part_svc = qsearchs('part_svc', { 'svcpart'=>$1 } ) or die "unknown svcpart: $1"; @@ -76,17 +31,12 @@ my $hashref = $part_svc->hashref; ) %> -<% if ( $error ) { %> -Error: <%= $error %> -<% } %> -
Service Part #<%= $part_svc->svcpart ? $part_svc->svcpart : "(NEW)" %>

Service
Disable new orders {disabled} eq 'Y' ? ' CHECKED' : '' %>>
-
Services are items you offer to your customers. @@ -117,8 +67,8 @@ my $conf = new FS::Conf; my %defs = ( 'svc_acct' => { 'dir' => 'Home directory', - 'uid' => 'UID (set to fixed and blank for dial-only)', - 'slipip' => 'IP address (Set to fixed and blank to disable dialin, or, set a value to be exported to RADIUS Framed-IP-Address. Use the special value 0e0 [zero e zero] to enable export to RADIUS without a Framed-IP-Address.)', + 'uid' => 'UID (set to fixed and blank for no UIDs)', + 'slipip' => 'IP address', # 'popnum' => qq!POP number!, 'popnum' => { desc => 'Access number', @@ -135,7 +85,7 @@ my %defs = ( '_password' => 'Password', 'gid' => 'GID (when blank, defaults to UID)', 'shell' => { - desc =>'Shell (all service definitions should have a default or fixed shell that is present in the shells configuration file)', + desc =>'Shell (all service definitions should have a default or fixed shell that is present in the shells configuration file, set to blank for no shell tracking)', type =>'select', select_list => [ $conf->config('shells') ], }, @@ -213,10 +163,11 @@ my %defs = ( 'form_name' => 'dummy', #'form_action' => 'process/part_svc.cgi', 'form_action' => 'part_svc.cgi', #self - 'form_text' => [ qw( magic svc svcpart ) ], + 'form_text' => [ qw( svc svcpart ) ], 'form_checkbox' => [ 'disabled' ], 'layer_callback' => sub { my $layer = shift; + my $html = qq!!; my $columns = 3; @@ -250,12 +201,8 @@ my %defs = ( $part_svc->svcpart($clone) if $clone; #haha, undone below foreach my $field (@fields) { my $part_svc_column = $part_svc->part_svc_column($field); - my $value = $error - ? $cgi->param("${layer}__${field}") - : $part_svc_column->columnvalue; - my $flag = $error - ? $cgi->param("${layer}__${field}_flag") - : $part_svc_column->columnflag; + my $value = $part_svc_column->columnvalue; + my $flag = $part_svc_column->columnflag; my $def = $defs{$layer}{$field}; my $desc = ref($def) ? $def->{desc} : $def; @@ -317,8 +264,20 @@ my %defs = ( $part_svc->svcpart('') if $clone; #undone $html .= ""; - $html .= '
'; + $html .= include('/elements/progress-init.html', + $layer, #form name + [ qw(svc svcpart disabled exportnum), @fields ], + 'process/part_svc.cgi', + $p.'browse/part_svc.cgi', + $layer, + ); + $html .= '
'; + + #$html .= '
'; $html;