<% include('/elements/header.html', "Add/Edit Packages", '') %> <% include('/elements/error.html') %>
%#current packages %my @cust_pkg = qsearch('cust_pkg', { 'custnum' => $custnum, 'cancel' => '' } ); %if (@cust_pkg) { Current packages - select to remove (services are moved to a new package below)

% % % foreach ( sort { $all_pkg{ $a->getfield('pkgpart') } % cmp $all_pkg{ $b->getfield('pkgpart') } % } % @cust_pkg % ) % { % my($pkgnum,$pkgpart)=( $_->getfield('pkgnum'), $_->getfield('pkgpart') ); % my $checked = $remove_pkg{$pkgnum} ? ' CHECKED' : ''; % % % }
Pkg # Package description
> <% $pkgnum %>: <% $all_pkg{$pkgpart} %> - <% $all_comment{$pkgpart} %>


% } Order new packages

% %my $cust_main = qsearchs('cust_main',{'custnum'=>$custnum}); %my $agent = qsearchs('agent',{'agentnum'=> $cust_main->agentnum }); % %my %agent_pkgs = map { ( $_->pkgpart , $all_pkg{$_->pkgpart} ) } % qsearch('type_pkgs',{'typenum'=> $agent->typenum }); % %my $count = 0; %my $pkgparts = 0; % % %#foreach my $type_pkgs ( qsearch('type_pkgs',{'typenum'=> $agent->typenum }) ) { %foreach my $pkgpart ( sort { $agent_pkgs{$a} cmp $agent_pkgs{$b} } % keys(%agent_pkgs) ) { % $pkgparts++; % next unless exists $pkg{$pkgpart}; #skip disabled ones % #print qq!! if ( $count == 0 ); % my $value = $cgi->param("pkg$pkgpart") || 0; % % % $count ++ ; % #if ( $count == 2 ) { % # print qq!\n! ; % # $count = 0; % #} %} %
Qty. Package Description
" VALUE="<% $value %>" SIZE="2" MAXLENGTH="2"> <% $pkgpart %>: <% $pkg{$pkgpart} %> - <% $comment{$pkgpart}%>
% unless ( $pkgparts ) { % my $p2 = popurl(2); % my $typenum = $agent->typenum; % my $agent_type = qsearchs( 'agent_type', { 'typenum' => $typenum } ); % my $atype = $agent_type->atype; % (No package definitions, or agent type <% $atype %> is not allowed to purchase any packages.) % }

<% include('/elements/footer.html') %> <%init> die "access denied" unless $FS::CurrentUser::CurrentUser->access_right('Bulk change customer packages'); my %pkg = (); my %comment = (); my %all_pkg = (); my %all_comment = (); #foreach (qsearch('part_pkg', { 'disabled' => '' })) { # $pkg{ $_ -> getfield('pkgpart') } = $_->getfield('pkg'); # $comment{ $_ -> getfield('pkgpart') } = $_->getfield('comment'); #} foreach (qsearch('part_pkg', {} )) { $all_pkg{ $_ -> getfield('pkgpart') } = $_->getfield('pkg'); $all_comment{ $_ -> getfield('pkgpart') } = $_->custom_comment; next if $_->disabled; $pkg{ $_ -> getfield('pkgpart') } = $_->getfield('pkg'); $comment{ $_ -> getfield('pkgpart') } = $_->custom_comment; } my($custnum, %remove_pkg); if ( $cgi->param('error') ) { $custnum = $cgi->param('custnum'); %remove_pkg = map { $_ => 1 } $cgi->param('remove_pkg'); } else { my($query) = $cgi->keywords; $query =~ /^(\d+)$/; $custnum = $1; %remove_pkg = (); } my $p1 = popurl(1);