X-Git-Url: http://git.freeside.biz/gitweb/?a=blobdiff_plain;f=httemplate%2Fview%2Fcust_main%2Fpackages%2Fsection.html;h=e888c94ac175179e57503273818d2ce34eec4230;hb=8142815f404a02df9ba3f92ad8e703a7355c5bcd;hp=909798e4b613e0137630660b752271cd68d2abe9;hpb=6b93f13c012ee4d15216c51136794d8a38726ed6;p=freeside.git
diff --git a/httemplate/view/cust_main/packages/section.html b/httemplate/view/cust_main/packages/section.html
index 909798e4b..e888c94ac 100755
--- a/httemplate/view/cust_main/packages/section.html
+++ b/httemplate/view/cust_main/packages/section.html
@@ -3,17 +3,23 @@
% #my $width = $show_location ? 'WIDTH="25%"' : 'WIDTH="33%"';
<% mt('Package') |h %>
<% mt('Status') |h %>
-% if ( $show_location ) {
- <% mt('Location') |h %>
-% }
+ <% mt('Contact/Location') |h %>
+% if (!$opt{no_services}) {
<% mt('Services') |h %>
+% }
% #$FS::cust_pkg::DEBUG = 2;
% foreach my $cust_pkg (@$packages) {
+% # if requested, this can override cust_pkg-group_by_location
<& .packagerow, $cust_pkg,
- 'cust_main' => $opt{'cust_main'},
- %conf_opt
+ %conf_opt,
+ ( map { $_ => $opt{$_} } qw(
+ cust_main bgcolor no_links cust_location_cache
+ before_pkg_callback before_svc_callback after_svc_callback
+ cust_pkg-group_by_location
+ no_services
+ )),
&>
% }
% } else { # there are no packages
@@ -27,13 +33,39 @@
<& package.html, %iopt &>
- <& status.html, %iopt &>
-% if ( $iopt{'show_location'} ) {
- <& location.html, %iopt &>
-% }
+ <& status.html, %iopt &>
+
+ <& contact.html, %iopt &>
+ <& location.html, %iopt &>
+
+% if (!$iopt{no_services}) {
<& services.html, %iopt &>
+% }
+
+% # insert hidden predecessors to this package, if any
+% # and a rolldown button to show them
+% # (we'll make it do something later)
+% if ( $cust_pkg->get('changed_from_pkg') ) {
+
+
+
+ History ⬇
+
+% # the hidden block here has ID="cust_pkgX" where X is the first pkgnum
+% # it contains.
+ <& hidden.html, $cust_pkg->get('changed_from_pkg'),
+ %iopt,
+ 'next_pkg' => $cust_pkg,
+ &>
+
+% }
% $row++;
+% # show the change target, if there is one
+% if ( $cust_pkg->change_to_pkg ) {
+ <& .packagerow, $cust_pkg->change_to_pkg, %iopt, 'change_from' => 1 &>
+% }
% # include supplemental packages if any
% $iopt{'supplemental'} = ($iopt{'supplemental'} || 0) + 1;
% foreach my $supp_pkg ($cust_pkg->supplemental_pkgs) {
@@ -51,7 +83,6 @@ my $conf = new FS::Conf;
my $curuser = $FS::CurrentUser::CurrentUser;
my $packages = $opt{'packages'};
-my $show_location = $opt{'show_location'};
# Sort order is hardcoded for now, can change this if needed.
@$packages = sort {
@@ -60,14 +91,29 @@ my $show_location = $opt{'show_location'};
( $a->getfield('pkgnum') <=> $b->getfield('pkgnum') )
} @$packages;
+my %change_custnum = map { $_->change_custnum => 1 }
+ grep { $_->change_custnum }
+ grep { $_->getfield('cancel') }
+ @$packages;
+
+my $pkg_attached = ( scalar(keys %change_custnum) == 1
+ && ! grep { ! $_->getfield('cancel') } @$packages
+ );
+
my $countrydefault = scalar($conf->config('countrydefault')) || 'US';
my %conf_opt = (
+ #for package.html
+ 'invoice-unitprice' => $conf->exists('invoice-unitprice'),
+ 'show_pkgnum' => $curuser->option('show_pkgnum'),
+ 'part_pkg-term_discounts' => $conf->exists('part_pkg-term_discounts'),
+
#for services.html and status.html
'cust_pkg-display_times' => ($conf->exists('cust_pkg-display_times')
|| $curuser->option('cust_pkg-display_times')),
#for status.html
'cust_pkg-show_autosuspend' => $conf->exists('cust_pkg-show_autosuspend'),
+ 'pkg_attached' => $pkg_attached,
#for status.html pkg-balances
'pkg-balances' => $conf->exists('pkg-balances'),
'money_char' => ( $conf->config('money_char') || '$' ),
@@ -76,19 +122,21 @@ my %conf_opt = (
'countrydefault' => $countrydefault,
'statedefault' => ( scalar($conf->config('statedefault'))
|| ($countrydefault eq 'US' ? 'CA' : '') ),
+ 'cust_pkg-group_by_location'=> $conf->exists('cust_pkg-group_by_location'),
+ 'cust_main-require_censustract'=> $conf->exists('cust_main-require_censustract'),
+ 'company_address' => [ $conf->config('company_address', $opt{cust_main}->agentnum ) ],
+
#for services.html
'svc_external-skip_manual' => $conf->exists('svc_external-skip_manual'),
+ 'svc_phone-bulk_provision_simple' => $conf->exists('svc_phone-bulk_provision_simple'),
'legacy_link' => $conf->exists('legacy_link'),
'manage_link' => scalar($conf->config('svc_broadband-manage_link')),
'manage_link_text' => scalar($conf->config('svc_broadband-manage_link_text')),
'manage_link_loc' => scalar($conf->config('svc_broadband-manage_link_loc')),
'manage_link-new_window' => $conf->exists('svc_broadband-manage_link-new_window'),
- 'maestro-status_test' => $conf->exists('maestro-status_test'),
'cust_pkg-large_pkg_size' => scalar($conf->config('cust_pkg-large_pkg_size')),
+ 'cust_pkg-hide_discontinued-part_svc' => $conf->exists('cust_pkg-hide_discontinued-part_svc'),
- # for packages.html Change location link
- 'show_location' => $show_location,
);
-warn Dumper \%conf_opt;
%init>