diff options
Diffstat (limited to 'httemplate/edit/process/bulk-part_pkg.html')
| -rw-r--r-- | httemplate/edit/process/bulk-part_pkg.html | 30 | 
1 files changed, 30 insertions, 0 deletions
diff --git a/httemplate/edit/process/bulk-part_pkg.html b/httemplate/edit/process/bulk-part_pkg.html new file mode 100644 index 000000000..4775a9334 --- /dev/null +++ b/httemplate/edit/process/bulk-part_pkg.html @@ -0,0 +1,30 @@ +% if ( $error ) { +%  $cgi->param('error', $error); +<% $cgi->redirect(popurl(3).'/edit/bulk-part_pkg.cgi?', $cgi->query_string) %> +% } else { +<% $cgi->redirect(popurl(3).'/browse/part_pkg.cgi') %> +% } +<%init> +die "access denied" unless $FS::CurrentUser::CurrentUser->access_right('Bulk edit package definitions'); + +my @pkgparts = $cgi->param('pkgpart') +  or die "no package definitions selected"; + +my %changes; +foreach my $param (grep { /^report_option_\d+$/ } $cgi->param) { +  if ( length($cgi->param($param)) ) { +    if ( $cgi->param($param) == 1 ) { +      $changes{$param} = 1; +    } else { +      $changes{$param} = ''; +    } +  } +} + +my $error; +foreach my $pkgpart (@pkgparts) { +  my $part_pkg = FS::part_pkg->by_key($pkgpart); +  my %options = ( $part_pkg->options, %changes ); +  $error ||= $part_pkg->replace( options => \%options ); +} +</%init>  | 
