1 <% include('/elements/header-popup.html', 'Bulk package change') %>
3 <% include('/elements/init_overlib.html') %>
5 <% include('/elements/progress-init.html',
7 [qw( old_pkgpart new_pkgpart )],
8 'process/bulk-cust_pkg.cgi',
9 $p.'browse/part_pkg.cgi',
13 <SCRIPT TYPE="text/javascript">
14 function areyousure() {
15 var warning = 'Change these packages?';
16 if(confirm(warning)) {
21 <FORM NAME="OneTrueForm">
23 % foreach my $src_part_pkg (@src_part_pkg) {
24 <INPUT NAME="old_pkgpart" TYPE="hidden" VALUE="<% $src_part_pkg->pkgpart %>">
25 Change <B><% $src_part_pkg->pkg_comment |h %></B><BR>
29 to new package definition
30 <SELECT NAME="new_pkgpart">
31 % foreach my $dest_part_pkg ( qsearch('part_pkg', { 'disabled' => '' } ) ) {
33 <OPTION VALUE="<% $dest_part_pkg->pkgpart %>"><% $dest_part_pkg->pkgpart %>: <% $dest_part_pkg->pkg |h %>
39 %#<INPUT TYPE="checkbox" NAME="keep_dates" CHECKED> Preserve all billing dates <I>(strongly recommended)</I>
43 <INPUT TYPE="button" VALUE="Bulk change packages" onclick="areyousure()">
47 <% include('/elements/footer.html') %>
52 unless $FS::CurrentUser::CurrentUser->access_right('Configuration');
54 my @src_part_pkg = ();
55 foreach my $pkgpart ( $cgi->multi_param('pkgpart') ) {
58 or die "illegal pkgpart: $pkgpart";
61 my $src_part_pkg = qsearchs('part_pkg', { 'pkgpart' => $old_pkgpart } )
62 or die "unknown pkgpart: $old_pkgpart";
64 push @src_part_pkg, $src_part_pkg;