X-Git-Url: http://git.freeside.biz/gitweb/?a=blobdiff_plain;f=httemplate%2Fview%2Fcust_main%2Fpackages%2Flocation.html;h=99d91e5146e56d8e21cc936675e5e11097992e8d;hb=b7cf1606a66cca95e3540f803ffa66d223f23a40;hp=59efce14a22983e787e31a6d92c22bc21f7b11d7;hpb=40a7b3dc653e099f7bd0bd762b649b04c4432db2;p=freeside.git
diff --git a/httemplate/view/cust_main/packages/location.html b/httemplate/view/cust_main/packages/location.html
index 59efce14a..99d91e514 100644
--- a/httemplate/view/cust_main/packages/location.html
+++ b/httemplate/view/cust_main/packages/location.html
@@ -1,48 +1,84 @@
-
-
-% unless ( $cust_pkg->locationnum ) {
- (default service address)
-% }
-
- <% $loc->get($prefix.'address1') |h %>
-
-% if ( $loc->get($prefix.'address2') !~ /^\s*$/ ) {
- <% $loc->get($prefix.'address2') |h %>
-% }
+% if ( $cust_pkg->change_from_pkg
+% and $cust_pkg->change_from_pkg->locationnum == $cust_pkg->locationnum)
+% {
+% # don't show the location
+% } else {
+% if ( !$opt{'cust_pkg-group_by_location'} ) {
+% if ( $default ) {
+
+% }
- <% $loc->get($prefix.'city') |h %><% $loc->get($prefix.'county') ? ' ('.$loc->get($prefix.'county').' county)' : '' |h %>,
- <% $loc->get($prefix.'state') |h %> <% $loc->get($prefix.'zip') |h %>
+ <% $loc->location_label( 'join_string' => ' ',
+ 'double_space' => ' ',
+ 'escape_function' => \&encode_entities,
+ 'countrydefault' => $countrydefault,
+ 'cust_main' => $opt{'cust_main'},
+ )
+ %>
-% if ( $loc->get($prefix.'country') ne $countrydefault ) {
- <% code2country( $loc->get($prefix.'country') ) %>
-% }
+% if ( $loc->latitude && $loc->longitude ) {
+
+
+ <% $loc->latitude %>, <% $loc->longitude %>
+ <& /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'},
+ }
+ &>
+
+% }
+% if ( $loc->country eq 'US' ) {
+% if ( $loc->censustract ) {
+
+
+ <% $loc->censustract %> (<% $loc->censusyear %> census)
+
+% } elsif ( $opt{'cust_main-require_censustract'} ) {
+
+
+ <% emt('Census tract unknown') %>
+
+% }
+% }
-
+% if ( $default ) {
+
+% }
+% } # all of this is hidden if packages are grouped by location, because
+% # it's in the top banner
-% if ( ! $cust_pkg->get('cancel')
+% if ( ! $cust_pkg->get('cancel')
% && $FS::CurrentUser::CurrentUser->access_right('Change customer package')
-% )
-% {
+% )
+% {
+
- ( <%pkg_change_location_link($cust_pkg)%> )
+% unless ( $opt{no_links} or $opt{'change_from'} ) {
+ ( <%pkg_change_location_link($cust_pkg)%> )
+% }
+% if ( $cust_pkg->locationnum && ! $opt{no_links} ) {
+ ( <%pkg_edit_location_link($cust_pkg->locationnum)%> )
+% }
-% }
-
- |
+% }
+% } # if the package is a scheduled future package change without location
+% # change, then don't show any of this at all. It's all implied by the
+% # preceding package.
<%init>
my %opt = @_;
-my $bgcolor = $opt{'bgcolor'};
my $cust_pkg = $opt{'cust_pkg'};
-my $part_pkg = $opt{'part_pkg'};
my $countrydefault = $opt{'countrydefault'} || 'US';
my $statedefault = $opt{'statedefault'}
|| ($countrydefault eq 'US' ? 'CA' : '');
-my $loc = $cust_pkg->cust_location_or_main;
-my $prefix =
- ( $loc->table eq 'cust_main' && length($loc->ship_last) ) ? 'ship_' : ''; #doh
+my $loc = $cust_pkg->cust_location_or_main('_cache'=>$opt{cust_location_cache});
+# dubious--they should all have a location now
+my $default = $cust_pkg->locationnum == $opt{'cust_main'}->ship_locationnum;
sub pkg_change_location_link {
my $cust_pkg = shift;
@@ -51,10 +87,23 @@ sub pkg_change_location_link {
'action' => $p. "misc/change_pkg.cgi?locationnum=-1;pkgpart=$pkgpart;".
"address1=;address2=;city=;county=;state=$statedefault;".
"zip=;country=$countrydefault",
- 'label' => 'Change location',
- 'actionlabel' => 'Change',
+ 'label' => emt('Change location'),
+ 'actionlabel' => emt('Change'),
'cust_pkg' => $cust_pkg,
+ 'width' => 960,
+ 'height' => 490,
);
}
+sub pkg_edit_location_link {
+ my $locationnum = shift;
+ include( '/elements/popup_link.html',
+ 'action' => $p. "edit/cust_location.cgi?locationnum=$locationnum",
+ 'label' => emt('Edit location'),
+ 'actionlabel' => emt('Edit'),
+ 'width' => 700,
+ 'height' => 355,
+ );
+}
+
%init>