X-Git-Url: http://git.freeside.biz/gitweb/?a=blobdiff_plain;f=httemplate%2Fview%2Fcust_main%2Fpackages%2Fpackage.html;h=8aa64039c5d7c846cdb5b677f89f857413ecf8d0;hb=98f6d91ec7eaa907204afbfeb90ede1e3bff656d;hp=596a4739160c82db304a81f3ad0b86eadbaf3e32;hpb=91dbe4c3834f38d428367d9a1e2c6cf9ea9d84a4;p=freeside.git diff --git a/httemplate/view/cust_main/packages/package.html b/httemplate/view/cust_main/packages/package.html index 596a47391..8aa64039c 100644 --- a/httemplate/view/cust_main/packages/package.html +++ b/httemplate/view/cust_main/packages/package.html @@ -1,4 +1,5 @@ -
@@ -8,36 +9,67 @@ %> <% $curuser->option('show_pkgnum') ? $cust_pkg->pkgnum.': ' : '' %><% $part_pkg->pkg |h %> - - - <% $part_pkg->custom_comment |h %> + ><% $opt{show_pkgnum} ? $cust_pkg->pkgnum.': ' : '' %><% $part_pkg->pkg |h %> +% +% my $custom_comment; +% if ( 0 && FS::part_pkg::flat->can('price_info') eq $part_pkg->can('price_info') ) { +% #perf hack / disabled in 4.x (feature pricing / cust_pkg_usageprice incompatible, well, harder) +% +% $part_pkg->{"_$_"} = $part_pkg->option($_) || 0 +% foreach grep !defined($part_pkg->{"_$_"} ), qw(setup_fee recur_fee); +% +% my $str = ''; +% $str = $opt{money_char} . $part_pkg->{_setup_fee}. +% ($part_pkg->{_recur_fee} ? ' setup' : ' one-time') +% if $part_pkg->{_setup_fee}; +% $str .= ', ' if $part_pkg->{_setup_fee} && $part_pkg->{_recur_fee}; +% $str .= $opt{money_char}. $part_pkg->{_recur_fee}. +% '/'. $part_pkg->freq_pretty +% if $part_pkg->{_recur_fee}; +% $str; +% +% $custom_comment = +% ( $part_pkg->custom ? '(CUSTOM) ' : '' ). +% $part_pkg->comment. +% ( ($part_pkg->custom || $part_pkg->comment) ? ' - ' : '' ). +% ($str || 'No charge'); +% +% } else { +% $custom_comment = $part_pkg->custom_comment('cust_pkg'=>$cust_pkg); +% } + <% $custom_comment ? ' - ' : '' %> + <% $custom_comment |h %> | |
- <% mt('Quantity:') |h %> - <% $cust_pkg->quantity %> - | -|
-% unless ( $cust_pkg->get('cancel') || $opt{no_links} ) {
+% if ( $part_pkg->freq eq '0' and !$opt{no_links} ) {
+% # One-time charge. Nothing you can do with this, unless:
+% if ( $curuser->access_right('Modify one-time charge') ) {
+ ( <%onetime_change_link($cust_pkg)%> )
+% }
+% # also, you can discount it
+% if ( $curuser->access_right('Discount customer package')
+% && ! scalar($cust_pkg->cust_pkg_discount_active)
+% && ! scalar($cust_pkg->part_pkg->part_pkg_discount)
+% ) {
+ ( <%pkg_discount_link($cust_pkg)%> )
+% }
+ +% +% } elsif ( !$cust_pkg->get('cancel') and !$opt{no_links} ) { % % if ( $change_from ) { % # This is the target package for a future change. % # Nothing you can do with it besides modify/cancel the % # future change, and that's on the current package. -% } elsif ( $supplemental or $part_pkg->freq eq '0' ) { +% } elsif ( $supplemental ) { % # Supplemental packages can't be changed independently. -% # One-time charges don't need to be changed. -% # For both of those, we only show "Add comments", -% # and "Add invoice details". +% # Show only "Add comments" and "Add invoice details". % } else { % # the usual case: links to change package definition, % # discount, and customization @@ -49,8 +81,10 @@ % % 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) +% && ! scalar( @{ $cust_pkg->{_cust_pkg_discount_active} } ) +% && ( ! $opt{'term_discounts'} +% || ! scalar($cust_pkg->part_pkg->part_pkg_discount) +% ) % ) % { % $br=1; @@ -65,19 +99,73 @@ <% $br ? ' ' : '' %> % } -% if ( $cust_pkg->num_cust_event -% && ( $curuser->access_right('Billing event reports') +% if ( ( $curuser->access_right('Billing event reports') % || $curuser->access_right('View customer billing events') % ) +% && $cust_pkg->exists_cust_event % ) { ( <%pkg_event_link($cust_pkg)%> ) % } -% } #!$supplemental +% } # a canceled recurring package, or else no_links is in effect + + + |
+ |
+ +% my $change_quan_label = 'Change quantity'; +% if ( $cust_pkg->quantity > 1 ) { +% $change_quan_label = 'change'; + <% mt('Quantity:') |h %> + <% $cust_pkg->quantity %> +% } + +% if ( $curuser->access_right('Change customer package') +% && ! $cust_pkg->get('cancel') +% && ! $supplemental +% && $part_pkg->freq ne '0' +% && ! $opt{no_links} +% && $opt{'invoice-unitprice'} +% ) +% { + + ( <% pkg_change_quantity_link($cust_pkg, $change_quan_label) %> ) + +% } + + | +|
+ +% my $change_sales_label = 'Change sales person'; +% if ( $cust_pkg->salesnum ) { +% $change_sales_label = 'change'; + <% mt('Sales Person:') |h %> + <% $cust_pkg->salesperson |h %> +% } + +% if ( $curuser->access_right('Change customer package') +% && ! $cust_pkg->get('cancel') +% && ! $supplemental +% #&& $part_pkg->freq ne '0' +% && ! $opt{no_links} +% ) +% { + + ( <% pkg_change_salesnum_link($cust_pkg, $change_sales_label) %> ) +% } + | |
- ( <% pkg_change_quantity_link($cust_pkg) %> ) - | -% } -
<% mt('Included usage') %> | ||||
---|---|---|---|---|
<% $part->description %>: | -ALIGN="right"><% $usage->minutes %> | +ALIGN="right"><% sprintf('%.1f', $usage->minutes) %> | > / | ><% $part->minutes %> | % if ( $part->shared ) { @@ -221,6 +296,7 @@