[freeside-commits] branch FREESIDE_3_BRANCH updated. 4bb41a18e2ad78c1422dca1298a6e6464c38f5fb
Ivan
ivan at 420.am
Fri Apr 25 16:15:11 PDT 2014
The branch, FREESIDE_3_BRANCH has been updated
via 4bb41a18e2ad78c1422dca1298a6e6464c38f5fb (commit)
from 207978f5897048e616e2c49a6e11cf8af35b0444 (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
commit 4bb41a18e2ad78c1422dca1298a6e6464c38f5fb
Author: Ivan Kohler <ivan at freeside.biz>
Date: Fri Apr 25 16:15:08 2014 -0700
optimize package view with tons of packages, RT#28526
diff --git a/httemplate/elements/coord-links.html b/httemplate/elements/coord-links.html
index 4c263c6..c885ade 100644
--- a/httemplate/elements/coord-links.html
+++ b/httemplate/elements/coord-links.html
@@ -23,7 +23,17 @@
<%init>
-my ($latitude, $longitude, $name, $agentnum) = @_;
+my %opt = ();
+my ($latitude, $longitude, $name, $agentnum);
+if ( ref($_[0]) ) {
+ %opt = %{ $_[0] };
+ $latitude = $opt{latitude};
+ $longitude = $opt{longitude};
+ $name = $opt{name};
+ $agentnum = $opt{agentnum};
+} else {
+ ($latitude, $longitude, $name, $agentnum) = @_;
+}
my $query = 'name='. uri_escape_utf8($name).
';lat='. $latitude.
@@ -35,12 +45,10 @@ $m->interp->apply_escapes($js_name, 'js_string');
$js_name =~ s/^'//;
$js_name =~ s/'$//;
-my @origin;
-my $origin;
#for directions link
-if ( $agentnum =~ /^\d+$/ ) {
- @origin = FS::Conf->new->config('company_address', $agentnum);
- $origin = join (/,/, at origin);
- $origin = uri_escape($origin);
-}
+my @origin = $opt{company_address}
+ ? @{ $opt{company_address} }
+ : FS::Conf->new->config('company_address', $agentnum);
+my $origin = uri_escape(join(',', @origin));
+
</%init>
diff --git a/httemplate/view/cust_main/packages/location.html b/httemplate/view/cust_main/packages/location.html
index db67d45..871bfcb 100644
--- a/httemplate/view/cust_main/packages/location.html
+++ b/httemplate/view/cust_main/packages/location.html
@@ -3,7 +3,7 @@
% {
% # don't show the location
% } else {
-% if ( !$conf->exists('cust_pkg-group_by_location') ) {
+% if ( !$opt{'cust_pkg-group_by_location'} ) {
% if ( $default ) {
<DIV STYLE="font-style: italic; font-size: small">
% }
@@ -12,6 +12,7 @@
'double_space' => ' ',
'escape_function' => \&encode_entities,
'countrydefault' => $countrydefault,
+ 'cust_main' => $opt{'cust_main'},
)
%>
@@ -19,11 +20,13 @@
<BR>
<FONT SIZE=-1>
<% $loc->latitude %>, <% $loc->longitude %>
- <& /elements/coord-links.html,
- $loc->latitude,
- $loc->longitude,
- $opt{'cust_main'}->name_short. ': '. $opt{'part_pkg'}->pkg,
- $opt{'cust_main'}->agentnum,
+ <& /elements/coord-links.html, {
+ 'latitude' => $loc->latitude,
+ 'longitude' => $loc->longitude,
+ 'name' => $opt{'cust_main'}->name_short.
+ ': '. $opt{'part_pkg'}->pkg,
+ 'company_address' => $opt{'company_address'},
+ }
&>
</FONT>
% }
@@ -32,7 +35,7 @@
<FONT SIZE=-1>
<% $loc->censustract %> (<% $loc->censusyear %> census)
</FONT>
-% } elsif ( $conf->exists('cust_main-require_censustract') ) {
+% } elsif ( $opt{'cust_main-require_censustract'} ) {
<BR>
<FONT SIZE=-1 COLOR="#ee3300">
<% emt('Census tract unknown') %>
@@ -64,7 +67,6 @@
% # preceding package.
<%init>
-my $conf = new FS::Conf;
my %opt = @_;
my $cust_pkg = $opt{'cust_pkg'};
diff --git a/httemplate/view/cust_main/packages/package.html b/httemplate/view/cust_main/packages/package.html
index 859a7f4..1209446 100644
--- a/httemplate/view/cust_main/packages/package.html
+++ b/httemplate/view/cust_main/packages/package.html
@@ -10,7 +10,7 @@
%>
<A NAME="cust_pkg<% $cust_pkg->pkgnum %>"
ID ="cust_pkg<% $cust_pkg->pkgnum %>"
- ><% $curuser->option('show_pkgnum') ? $cust_pkg->pkgnum.': ' : '' %><B><% $part_pkg->pkg |h %></B></A>
+ ><% $opt{show_pkgnum} ? $cust_pkg->pkgnum.': ' : '' %><B><% $part_pkg->pkg |h %></B></A>
% my $custom_comment = $part_pkg->custom_comment();
<% $custom_comment ? ' - ' : '' %>
<% $custom_comment |h %>
@@ -72,10 +72,10 @@
<% $br ? '<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->num_cust_event
% ) {
( <%pkg_event_link($cust_pkg)%> )
% }
diff --git a/httemplate/view/cust_main/packages/section.html b/httemplate/view/cust_main/packages/section.html
index 152ccaa..a02bf59 100755
--- a/httemplate/view/cust_main/packages/section.html
+++ b/httemplate/view/cust_main/packages/section.html
@@ -79,6 +79,7 @@ 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'),
#for services.html and status.html
'cust_pkg-display_times' => ($conf->exists('cust_pkg-display_times')
@@ -94,6 +95,10 @@ 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'),
'legacy_link' => $conf->exists('legacy_link'),
-----------------------------------------------------------------------
Summary of changes:
httemplate/elements/coord-links.html | 24 ++++++++++++++-------
httemplate/view/cust_main/packages/location.html | 18 +++++++++-------
httemplate/view/cust_main/packages/package.html | 6 ++--
httemplate/view/cust_main/packages/section.html | 5 ++++
4 files changed, 34 insertions(+), 19 deletions(-)
More information about the freeside-commits
mailing list