break _bytecount subroutines out of FS::UI::Web
[freeside.git] / httemplate / edit / process / svc_acct.cgi
index 247a5b4..a4a6c00 100755 (executable)
 %#unmunge usergroup
 %$cgi->param('usergroup', [ $cgi->param('radius_usergroup') ] );
 %
-%my $new = new FS::svc_acct ( {
-%  map {
-%    $_, scalar($cgi->param($_));
+%#unmunge bytecounts
+%foreach (map { $_,$_."_threshold" } qw( upbytes downbytes totalbytes )) {
+%  $cgi->param($_, FS::UI::bytecount::parse_bytecount($cgi->param($_)) );
+%}
+%
+%my %hash = $svcnum ? $old->hash : ();
+%map {
+%    $hash{$_} = scalar($cgi->param($_));
 %  #} qw(svcnum pkgnum svcpart username _password popnum uid gid finger dir
 %  #  shell quota slipip)
-%  } ( fields('svc_acct'), qw( pkgnum svcpart usergroup ) )
-%} );
+%  } (fields('svc_acct'), qw ( pkgnum svcpart usergroup ));
+%my $new = new FS::svc_acct ( \%hash );
 %
 %my $error;
 %if ( $svcnum ) {