% if ( $cust_pkg->quantity > 1 ) { % } % my $editi = $curuser->access_right('Edit customer package invoice details'); % my $editc = $curuser->access_right('Edit customer package comments'); % my @cust_pkg_detail = $cust_pkg->cust_pkg_detail; % my @invoice_detail = grep { $_->detailtype eq 'I' } @cust_pkg_detail; % my @comments = grep { $_->detailtype eq 'C' } @cust_pkg_detail; % % if ( scalar(@invoice_detail) || scalar(@comments) || $editi || $editc ) { % % my $editlink = $p. 'edit/cust_pkg_detail.html?pkgnum='. $cust_pkg->pkgnum. % ';detailtype='; % if ( @invoice_detail ) { % foreach my $cust_pkg_detail ( @invoice_detail ) { % }
<% $curuser->option('show_pkgnum') ? $cust_pkg->pkgnum.': ' : '' %><% $part_pkg->pkg |h %> - <% $part_pkg->custom_comment |h %>
      <% mt('Quantity:') |h %> <% $cust_pkg->quantity %>
% unless ( $cust_pkg->get('cancel') ) { % % my $br = 0; % if ( $curuser->access_right('Change customer package') ) { % $br=1; ( <%pkg_change_link($cust_pkg)%> ) % } % % if ( $curuser->access_right('Edit customer package dates') ) { % $br=1; ( <%pkg_dates_link($cust_pkg)%> ) % } % % if ( $curuser->access_right('Discount customer package') % && $part_pkg->can_discount % && ! scalar($cust_pkg->cust_pkg_discount_active) % && ! scalar($cust_pkg->part_pkg->part_pkg_discount) % ) % { % $br=1; ( <%pkg_discount_link($cust_pkg)%> ) % } % % if ( $curuser->access_right('Customize customer package') ) { % $br=1; ( <%pkg_customize_link($cust_pkg,$part_pkg)%> ) % } % <% $br ? '
' : '' %> % } % if ( $cust_pkg->num_cust_event % && ( $curuser->access_right('Billing event reports') % || $curuser->access_right('View customer billing events') % ) % ) { ( <%pkg_event_link($cust_pkg)%> ) % }
<& /elements/table-grid.html &>
<% mt('Invoice details') |h %> % if ( $editi && ! $cust_pkg->get('cancel') ) { (<& /elements/popup_link.html, { 'action' => $editlink. 'I', 'label' => emt('edit'), 'actionlabel' => emt('Edit invoice details'), 'color' => '#333399', 'width' => 763, } &>) % }
 - <% $cust_pkg_detail->detail |h %>
% } else { % if ( $editi && ! $cust_pkg->get('cancel') ) { ( <% include('/elements/popup_link.html', { 'action' => $editlink. 'I', 'label' => emt('Add invoice details'), 'actionlabel' => emt('Add invoice details'), 'color' => '#333399', 'width' => 763, }) %> ) % } % } % if ( @comments ) { <& /elements/table-grid.html &> <% mt('Comments') |h %> % if ( $editc ) { (<& /elements/popup_link.html, { 'action' => $editlink. 'C', 'label' => emt('edit'), 'actionlabel' => emt('Edit comments'), 'color' => '#333399', 'width' => 763, } &>) % } % foreach my $cust_pkg_detail ( @comments ) {  - <% $cust_pkg_detail->detail |h %> % } % } else { % if ( $editc ) { ( <& /elements/popup_link.html, { 'action' => $editlink. 'C', 'label' => emt('Add comments'), 'actionlabel' => emt('Add comments'), 'color' => '#333399', 'width' => 763, } &> ) % } % } % if ( $curuser->access_right('Change customer package') and % !$cust_pkg->get('cancel') and % !$opt{'show_location'}) { ( <% pkg_change_location_link($cust_pkg) %> ) % } % } <%init> my %opt = @_; my $bgcolor = $opt{'bgcolor'}; my $cust_pkg = $opt{'cust_pkg'}; my $part_pkg = $opt{'part_pkg'}; my $curuser = $FS::CurrentUser::CurrentUser; my $countrydefault = $opt{'countrydefault'} || 'US'; my $statedefault = $opt{'statedefault'} || ($countrydefault eq 'US' ? 'CA' : ''); #subroutines #false laziness w/status.html sub pkg_link { my($action, $label, $cust_pkg) = @_; return '' unless $cust_pkg; qq!$label!; } sub pkg_change_link { my $cust_pkg = shift; my $locationnum = $cust_pkg->locationnum; include( '/elements/popup_link-cust_pkg.html', 'action' => $p. "misc/change_pkg.cgi?locationnum=$locationnum", 'label' => emt('Change package'), 'actionlabel' => emt('Change'), 'cust_pkg' => $cust_pkg, ); } sub pkg_change_location_link { my $cust_pkg = shift; my $pkgpart = $cust_pkg->pkgpart; include( '/elements/popup_link-cust_pkg.html', 'action' => $p. "misc/change_pkg.cgi?locationnum=-1;pkgpart=$pkgpart;". "address1=;address2=;city=;county=;state=$statedefault;". "zip=;country=$countrydefault", 'label' => emt('Change location'), 'actionlabel' => emt('Change'), 'cust_pkg' => $cust_pkg, ); } sub pkg_dates_link { pkg_link('edit/REAL_cust_pkg', emt('Edit dates'), @_ ); } sub pkg_discount_link { my $cust_pkg = shift or return ''; include( '/elements/popup_link-cust_pkg.html', 'action' => $p.'edit/cust_pkg_discount.html', 'label' => emt('Discount'), 'actionlabel' => emt('Discount'), 'cust_pkg' => $cust_pkg, 'width' => 616, ); } sub pkg_customize_link { my $cust_pkg = shift or return ''; my $part_pkg = shift; my $custnum = $cust_pkg->custnum; qq!!.emt('Customize').''; } sub pkg_event_link { my($cust_pkg) = @_; qq!!. emt('View package events'). ''; }