fix cust_main package list colors
[freeside.git] / httemplate / view / cust_main / packages.html
index 3ac4861..da4d587 100755 (executable)
@@ -1,30 +1,53 @@
+<STYLE TYPE="text/css">
+td.package {
+  vertical-align: top;
+  border-width: 0;
+  border-style: solid;
+  border-color: #bbbbff;
+}
+table.package {
+  border: none;
+  padding: 0;
+  border-spacing: 0;
+  width: 100%;
+}
+.row0 { background-color: #eeeeee; }
+.row1 { background-color: #ffffff; }
+
+</STYLE>
 % my $s = 0;
+
+% if ( $curuser->access_right('Qualify service') ) { 
+  <% $s++ ? ' | ' : '' %>
+  <& qual_link.html, $cust_main &>
+% }
+
 % if ( $curuser->access_right('Order customer package') ) { 
   <% $s++ ? ' | ' : '' %>
-  <% include('order_pkg_link.html', $cust_main) %>
+  <& /elements/order_pkg_link.html, 'cust_main'=>$cust_main &>
 % } 
 
 % if ( $curuser->access_right('One-time charge')
 %        && $conf->config('payby-default') ne 'HIDE'
 %      ) {
   <% $s++ ? ' | ' : '' %>
-  <% include('one_time_charge_link.html', $cust_main) %>
+  <& one_time_charge_link.html, $cust_main &>
 % } 
 
 % if ( $curuser->access_right('Bulk change customer packages') ) { 
   <% $s++ ? ' | ' : '' %>
-  <A HREF="<% $p %>edit/cust_pkg.cgi?<% $cust_main->custnum %>">Bulk order and cancel packages</A> (preserves services)
+  <A HREF="<% $p %>edit/cust_pkg.cgi?<% $cust_main->custnum %>"><% mt('Bulk order and cancel packages') |h %></A> (<% mt('preserves services') |h %>)
 % } 
 
 <BR><BR>
 
 <TABLE>
   <TR>
-    <TD ALIGN="left">
+    <TD ALIGN="left" VALIGN="top">
 
 % if ( @$packages ) {
 
-Current packages
+<% mt('Current packages') |h %> 
 % } 
 % if ( $cust_main->num_cancelled_pkgs ) {
 %     if ( $cgi->param('showcancelledpackages') eq '0' #see if it was set by me
@@ -35,89 +58,58 @@ Current packages
 %     {
 %       my $prev = $cgi->param('showcancelledpackages');
 %       $cgi->param('showcancelledpackages', 1);
-  ( <a href="<% $cgi->self_url %>">show
+  ( <a href="<% $cgi->self_url %>"><% mt('show') |h %> 
 %       $cgi->param('showcancelledpackages', $prev);
 %   } else {
 %       $cgi->param('showcancelledpackages', 0);
-  ( <a href="<% $cgi->self_url %>">hide
+  ( <a href="<% $cgi->self_url %>"><% mt('hide') |h %> 
 %       $cgi->param('showcancelledpackages', 1);
 %   } 
 
cancelled packages</a> )
<% mt('cancelled packages') |h %></a> )
 % } 
 % if ( $num_old_packages ) {
 %   $cgi->param('showoldpackages', 1);
-    ( <a href="<% $cgi->self_url %>">show old packages</a> )
+    ( <a href="<% $cgi->self_url %>"><% mt('show old packages') |h %></a> )
 % } elsif ( $cgi->param('showoldpackages') ) {
 %   $cgi->param('showoldpackages', 0);
-    ( <a href="<% $cgi->self_url %>">hide old packages</a> )
+    ( <a href="<% $cgi->self_url %>"><% mt('hide old packages') |h %></a> )
 % }
 
     </TD>
     <TD ALIGN="right">
-      <A HREF="<%$p%>search/report_cust_pkg.html?custnum=<% $cust_main->custnum %>">Package reports</A><BR>
-      Service reports:
-        <A HREF="<%$p%>search/report_svc_acct.html?custnum=<% $cust_main->custnum %>">accounts</A>
+      <A HREF="<%$p%>search/report_cust_pkg.html?custnum=<% $cust_main->custnum %>"><% mt('Package reports') |h %></A>
+% if ( $curuser->access_right('Qualify service') ) { 
+    | <A HREF="<%$p%>search/qual.cgi?custnum=<% $cust_main->custnum %>"><% mt('View Qualifications') |h %></A>
+% }
+      <BR>
+      <% mt('Service reports:') |h %> 
+        <A HREF="<%$p%>search/report_svc_acct.html?custnum=<% $cust_main->custnum %>"><% mt('accounts') |h %></A><BR>
+      <% mt('Usage reports:') |h %> 
+        <A HREF="<%$p%>search/report_cdr.html?custnum=<% $cust_main->custnum %>"><% mt('CDRs') |h %></A>
     </TD>
   </TR>
 
   <TR>
     <TD COLSPAN=2>
-
-% if ( @$packages ) { 
-
-<% include('/elements/table-grid.html') %>
-% my $bgcolor1 = '#eeeeee';
-%   my $bgcolor2 = '#ffffff';
-%   my $bgcolor = '';
-
-<TR>
-  <TH CLASS="grid" BGCOLOR="#cccccc">Package</TH>
-  <TH CLASS="grid" BGCOLOR="#cccccc">Status</TH>
-% if ( $show_location ) {
-  <TH CLASS="grid" BGCOLOR="#cccccc">Location</TH>
-% }
-  <TH CLASS="grid" BGCOLOR="#cccccc">Services</TH>
-</TR>
-
-% #$FS::cust_pkg::DEBUG = 2;
-% foreach my $cust_pkg (@$packages) {
-%
-%   if ( $bgcolor eq $bgcolor1 ) {
-%     $bgcolor = $bgcolor2;
-%   } else {
-%     $bgcolor = $bgcolor1;
-%   }
-%
-%   my %iopt = (
-%     'bgcolor'  => $bgcolor,
-%     'cust_pkg' => $cust_pkg,
-%     'part_pkg' => $cust_pkg->part_pkg,
-%     %conf_opt,
-%   );
-%
-
-    <!--pkgnum: <% $cust_pkg->pkgnum %>-->
-    <TR>
-      <% include('packages/package.html',  %iopt) %>
-      <% include('packages/status.html',   %iopt) %>
-% if ( $show_location ) {
-      <% include('packages/location.html', %iopt) %>
+% if ( $conf->exists('cust_pkg-group_by_location') and $show_location ) {
+<& locations.html,
+    'cust_main'     => $cust_main,
+    'packages'      => $packages,
+ &>
 % }
-      <% include('packages/services.html', %iopt) %>
-    </TR>
-
-% }
-
+% else {
+% # in this format, put all packages in one section
+<& /elements/table-grid.html &>
+<& packages/section.html,
+    'cust_main'     => $cust_main,
+    'packages'      => $packages,
+    'show_location' => $show_location,
+ &>
 </TABLE>
-
-% } else {
-<BR>
-% } 
-
+% }
     </TD>
   </TR>
-</TABLE>
 
 % if ( $cgi->param('fragment') =~ /^cust_pkg(\d+)$/ ) {
   <SCRIPT>
@@ -128,40 +120,22 @@ Current packages
     if ( el ) el.scrollIntoView(true);
   </SCRIPT>
 % }
-
+</TABLE>
 <%init>
 
-my( $cust_main ) = @_;
+my $cust_main = shift;
+my %opt = @_;
 my $conf = new FS::Conf;
 
 my $curuser = $FS::CurrentUser::CurrentUser;
 
 my( $packages, $num_old_packages ) = get_packages($cust_main, $conf);
 
-my $show_location = $conf->exists('cust_pkg-always_show_location')
-                        || ( grep $_->locationnum, @$packages ); # ? '1' : '0';
 
-my $countrydefault = scalar($conf->config('countrydefault')) || 'US';
-my %conf_opt = (
-  #for services.html and status.html
-  'cust_pkg-display_times'    => $conf->exists('cust_pkg-display_times'),
-
-  #for status.html
-  'cust_pkg-show_autosuspend' => $conf->exists('cust_pkg-show_autosuspend'),
-  #for status.html pkg-balances
-  'pkg-balances'              => $conf->exists('pkg-balances'),
-  'money_char'                => ( $conf->config('money_char') || '$' ),
-
-  #for location.html
-  'countrydefault'            => $countrydefault,
-  'statedefault'              => ( scalar($conf->config('statedefault'))
-                                  || ($countrydefault eq 'US' ? 'CA' : '') ),
-  #for services.html
-  'svc_external-skip_manual'  => $conf->exists('svc_external-skip_manual'),
-  'legacy_link'               => $conf->exists('legacy_link'),
-  'svc_broadband-manage_link' => $conf->config('svc_broadband-manage_link'),
-);
+my $show_location = $conf->exists('cust_pkg-always_show_location') 
+  || (grep $_->locationnum ne $cust_main->ship_locationnum, @$packages);
 
+my $countrydefault = scalar($conf->config('countrydefault')) || 'US';
 #subroutines
 
 sub get_packages {
@@ -221,6 +195,10 @@ sub get_packages {
   }
 
   $num_old_packages -= scalar(@packages);
+  
+  # don't include supplemental packages in this list; they'll be found from
+  # their main packages
+  @packages = grep !$_->main_pkgnum, @packages;
 
   ( \@packages, $num_old_packages );
 }