[freeside-commits] freeside/httemplate/view/cust_main/packages location.html, 1.5, 1.6 services.html, 1.1, 1.2 status.html, 1.1, 1.2

Ivan,,, ivan at wavetail.420.am
Sat Feb 7 00:23:12 PST 2009


Update of /home/cvs/cvsroot/freeside/httemplate/view/cust_main/packages
In directory wavetail.420.am:/tmp/cvs-serv22661/packages

Modified Files:
	location.html services.html status.html 
Log Message:
optimize customer view: avoid looking up config values inside loops, RT#4728

Index: status.html
===================================================================
RCS file: /home/cvs/cvsroot/freeside/httemplate/view/cust_main/packages/status.html,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- status.html	8 Jan 2009 01:45:22 -0000	1.1
+++ status.html	7 Feb 2009 08:23:10 -0000	1.2
@@ -6,7 +6,7 @@
 % if ( $cust_pkg->get('cancel') ) { #status: cancelled
 %   my $cpr = $cust_pkg->last_cust_pkg_reason('cancel');
 
-    <% pkg_status_row($cust_pkg, 'Cancelled', 'cancel', 'color'=>'FF0000', conf=>$conf ) %>
+    <% pkg_status_row($cust_pkg, 'Cancelled', 'cancel', 'color'=>'FF0000', %opt ) %>
 
     <% pkg_status_row_colspan(
          ( $cpr ? $cpr->reasontext. ' by '. $cpr->otaker : '' ), '',
@@ -20,10 +20,10 @@
 
 %   } else { 
 
-       <% pkg_status_row( $cust_pkg, 'Setup', 'setup', conf=>$conf ) %>
-       <% pkg_status_row_changed( $cust_pkg, conf=>$conf ) %>
-       <% pkg_status_row_if( $cust_pkg, $last_bill_or_renewed, 'last_bill', conf=>$conf, curuser=>$curuser ) %>
-       <% pkg_status_row_if( $cust_pkg, 'Suspended', 'susp', conf=>$conf, curuser=>$curuser ) %>
+       <% pkg_status_row( $cust_pkg, 'Setup', 'setup', %opt ) %>
+       <% pkg_status_row_changed( $cust_pkg, %opt ) %>
+       <% pkg_status_row_if( $cust_pkg, $last_bill_or_renewed, 'last_bill', %opt, curuser=>$curuser ) %>
+       <% pkg_status_row_if( $cust_pkg, 'Suspended', 'susp', %opt, curuser=>$curuser ) %>
 
 %   } 
 %
@@ -32,7 +32,7 @@
 %   if ( $cust_pkg->get('susp') ) { #status: suspended
 %     my $cpr = $cust_pkg->last_cust_pkg_reason('susp');
 
-    <% pkg_status_row( $cust_pkg, 'Suspended', 'susp', 'color'=>'FF9900', conf=>$conf ) %>
+    <% pkg_status_row( $cust_pkg, 'Suspended', 'susp', 'color'=>'FF9900', %opt ) %>
 
     <% pkg_status_row_colspan(
          ( $cpr ? $cpr->reasontext. ' by '. $cpr->otaker : '' ), '',
@@ -43,13 +43,13 @@
 %   unless ( $cust_pkg->get('setup') ) { 
       <% pkg_status_row_colspan('Never billed') %>
 %   } else { 
-      <% pkg_status_row($cust_pkg, 'Setup', 'setup', conf=>$conf ) %>
+      <% pkg_status_row($cust_pkg, 'Setup', 'setup', %opt ) %>
 %   } 
 
-    <% pkg_status_row_changed( $cust_pkg, conf=>$conf ) %>
-    <% pkg_status_row_if( $cust_pkg, $last_bill_or_renewed, 'last_bill', conf=>$conf, curuser=>$curuser ) %>
-%   # pkg_status_row($cust_pkg, 'Next bill', 'bill', conf=>$conf)
-    <% pkg_status_row_if( $cust_pkg, 'Expires', 'expire', conf=>$conf, curuser=>$curuser ) %>
+    <% pkg_status_row_changed( $cust_pkg, %opt ) %>
+    <% pkg_status_row_if( $cust_pkg, $last_bill_or_renewed, 'last_bill', %opt, curuser=>$curuser ) %>
+%   # pkg_status_row($cust_pkg, 'Next bill', 'bill', %opt)
+    <% pkg_status_row_if( $cust_pkg, 'Expires', 'expire', %opt, curuser=>$curuser ) %>
 
     <TR>
       <TD COLSPAN=<%$colspan%>>
@@ -94,7 +94,7 @@
 
           <% pkg_status_row_colspan('One-time&nbsp;charge') %>
 
-          <% pkg_status_row($cust_pkg, 'Billed', 'setup', conf=>$conf) %>
+          <% pkg_status_row($cust_pkg, 'Billed', 'setup', %opt) %>
 
 %       } else { 
 %
@@ -116,7 +116,7 @@
             %>
 %         } 
 
-          <% pkg_status_row($cust_pkg, 'Setup', 'setup', conf=>$conf) %>
+          <% pkg_status_row($cust_pkg, 'Setup', 'setup', %opt) %>
 
 %       } 
 %
@@ -124,12 +124,12 @@
 %   my $autosuspend = pkg_autosuspend_time( $cust_pkg );
 %   $cust_pkg->set('autosuspend', $autosuspend) if $autosuspend;
 
-      <% pkg_status_row_changed( $cust_pkg, conf=>$conf ) %>
-      <% pkg_status_row_if( $cust_pkg, $last_bill_or_renewed, 'last_bill', conf=>$conf, curuser=>$curuser ) %>
-      <% pkg_status_row_if( $cust_pkg, $next_bill_or_prepaid_until, 'bill', conf=>$conf, curuser=>$curuser ) %>
-      <% pkg_status_row_if($cust_pkg, 'Will automatically suspend by', 'autosuspend', conf=>$conf) %>
-      <% pkg_status_row_if( $cust_pkg, 'Will suspend on', 'adjourn', conf=>$conf, curuser=>$curuser ) %>
-      <% pkg_status_row_if( $cust_pkg, 'Expires', 'expire', conf=>$conf, curuser=>$curuser ) %>
+      <% pkg_status_row_changed( $cust_pkg, %opt ) %>
+      <% pkg_status_row_if( $cust_pkg, $last_bill_or_renewed, 'last_bill', %opt, curuser=>$curuser ) %>
+      <% pkg_status_row_if( $cust_pkg, $next_bill_or_prepaid_until, 'bill', %opt, curuser=>$curuser ) %>
+      <% pkg_status_row_if($cust_pkg, 'Will automatically suspend by', 'autosuspend', %opt) %>
+      <% pkg_status_row_if( $cust_pkg, 'Will suspend on', 'adjourn', %opt, curuser=>$curuser ) %>
+      <% pkg_status_row_if( $cust_pkg, 'Expires', 'expire', %opt, curuser=>$curuser ) %>
 
 %     if ( $part_pkg->freq ) { 
 
@@ -171,9 +171,8 @@
 my $cust_pkg = $opt{'cust_pkg'};
 my $part_pkg = $opt{'part_pkg'};
 my $curuser  = $FS::CurrentUser::CurrentUser;
-my $conf     = new FS::Conf;
-my $colspan  = $conf->exists('cust_pkg-display_times') ? 8 : 4;
-my $width    = $conf->exists('cust_pkg-display_times') ? '38%' : '56%';
+my $colspan  = $opt{'cust_pkg-display_times'} ? 8 : 4;
+my $width    = $opt{'cust_pkg-display_times'} ? '38%' : '56%';
 
 #false laziness w/edit/REAL_cust_pkg.cgi
 my( $billed_or_prepaid, $last_bill_or_renewed, $next_bill_or_prepaid_until );
@@ -213,7 +212,7 @@
   $html   .= qq($title&nbsp;);
   $html   .= qq(</B></FONT>) if length($color);
   $html   .= qq(</TD>);
-  $html   .= pkg_datestr($cust_pkg, $field, $opt{conf}).'</TR>';
+  $html   .= pkg_datestr($cust_pkg, $field, %opt).'</TR>';
 
   $html;
 }
@@ -237,7 +236,7 @@
 sub pkg_status_row_changed {
   my( $cust_pkg, %opt ) = @_;
   return '' unless $cust_pkg->change_date;
-  my $html = pkg_status_row( $cust_pkg, 'Package&nbsp;changed', 'change_date', conf=>$opt{'conf'} );
+  my $html = pkg_status_row( $cust_pkg, 'Package&nbsp;changed', 'change_date', %opt );
   my $old = $cust_pkg->old_cust_pkg;
   if ( $old ) {
     my $part_pkg = $old->part_pkg;
@@ -269,7 +268,7 @@
 }
 
 sub pkg_datestr {
-  my($cust_pkg, $field, $conf) = @_ or return '';
+  my($cust_pkg, $field, %opt) = @_ or return '';
   return '&nbsp;' unless $cust_pkg->get($field);
   my $format = '<TD align="left"><B>%b</B></TD>'.
                '<TD align="right"><B>&nbsp;%o,</B></TD>'.
@@ -279,7 +278,7 @@
              '<TD ALIGN="center"><B>:</B></TD>'.
              '<TD ALIGN="left"><B>%M</B></TD>'.
              '<TD ALIGN="left"><B>&nbsp;%P</B></TD>'
-    if $conf->exists('cust_pkg-display_times');
+    if $opt{'cust_pkg-display_times'};
   my $strip = time2str($format, $cust_pkg->get($field) );
   $strip =~ s/ (\d)/$1/g;
   $strip;

Index: services.html
===================================================================
RCS file: /home/cvs/cvsroot/freeside/httemplate/view/cust_main/packages/services.html,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- services.html	8 Jan 2009 01:45:22 -0000	1.1
+++ services.html	7 Feb 2009 08:23:10 -0000	1.2
@@ -20,7 +20,7 @@
       <TR>
         <TD ALIGN="right" COLSPAN="3" VALIGN="top" STYLE="padding-bottom:1px;padding-top:0px"><FONT SIZE="-2" COLOR="#FFD000">
 
-            <% $cust_svc->overlimit ? "Overlimit: ". time2str('%b %o %Y' . ($conf->exists('cust_pkg-display_times') ? ' %l:%M %P' : ''), $cust_svc->overlimit) : '' %>
+            <% $cust_svc->overlimit ? "Overlimit: ". time2str('%b %o %Y' . ($opt{'cust_pkg-display_times'} ? ' %l:%M %P' : ''), $cust_svc->overlimit) : '' %>
           </FONT></TD>
       </TR>
 
@@ -55,7 +55,7 @@
 
       <TR>
         <TD COLSPAN=3 ALIGN="center" STYLE="padding-bottom:4px;padding-top:0px">
-          <B><% svc_provision_link($cust_pkg, $part_svc, $conf, $curuser) %></B>
+          <B><% svc_provision_link($cust_pkg, $part_svc, \%opt, $curuser) %></B>
         </TD>
       </TR>
 
@@ -74,17 +74,16 @@
 my $cust_pkg = $opt{'cust_pkg'};
 my $part_pkg = $opt{'part_pkg'};
 my $curuser  = $FS::CurrentUser::CurrentUser;
-my $conf     = new FS::Conf;
 
 sub svc_provision_link {
-  my ($cust_pkg, $part_svc, $conf, $curuser) = @_;
+  my ($cust_pkg, $part_svc, $opt, $curuser) = @_;
   ( my $svc_nbsp = $part_svc->svc ) =~ s/\s+/&nbsp;/g;
   my $num_avail = $part_svc->num_avail;
   my $pkgnum_svcpart = "pkgnum=". $cust_pkg->pkgnum. ';'.
                        "svcpart=". $part_svc->svcpart;
   my $url;
   if ( $part_svc->svcdb eq 'svc_external' #could be generalized
-       && $conf->exists('svc_external-skip_manual')
+       && $opt->{'svc_external-skip_manual'}
   ) {
     $url = "${p}edit/process/". $part_svc->svcdb. ".cgi?$pkgnum_svcpart";
   } else {
@@ -99,7 +98,7 @@
 
   my $link = qq!<A CLASS="provision" HREF="$url">!.
              "Provision&nbsp;$svc_nbsp&nbsp;($num_avail)</A>";
-  if ( $conf->exists('legacy_link')
+  if ( $opt->{'legacy_link'}
        && $curuser->access_right('View/link unlinked services')
      )
   {

Index: location.html
===================================================================
RCS file: /home/cvs/cvsroot/freeside/httemplate/view/cust_main/packages/location.html,v
retrieving revision 1.5
retrieving revision 1.6
diff -u -d -r1.5 -r1.6
--- location.html	19 Jan 2009 06:36:25 -0000	1.5
+++ location.html	7 Feb 2009 08:23:10 -0000	1.6
@@ -33,14 +33,11 @@
 
 my %opt = @_;
 
-my $conf = new FS::Conf;
-
 my $bgcolor        = $opt{'bgcolor'};
 my $cust_pkg       = $opt{'cust_pkg'};
 my $part_pkg       = $opt{'part_pkg'};
-my $conf           = new FS::Conf;
-my $countrydefault = $conf->config('countrydefault') || 'US';
-my $statedefault   = $conf->config('statedefault')
+my $countrydefault = $opt{'countrydefault'} || 'US';
+my $statedefault   = $opt{'statedefault'}
                      || ($countrydefault eq 'US' ? 'CA' : '');
 
 my $loc = $cust_pkg->cust_location_or_main;



More information about the freeside-commits mailing list