summaryrefslogtreecommitdiff
path: root/httemplate
diff options
context:
space:
mode:
Diffstat (limited to 'httemplate')
-rw-r--r--httemplate/elements/tr-select-cust_location.html9
1 files changed, 8 insertions, 1 deletions
diff --git a/httemplate/elements/tr-select-cust_location.html b/httemplate/elements/tr-select-cust_location.html
index f06ea0ffe..d44b1c489 100644
--- a/httemplate/elements/tr-select-cust_location.html
+++ b/httemplate/elements/tr-select-cust_location.html
@@ -150,7 +150,7 @@ Example:
% my @locations = $cust_main ? $cust_main->cust_location : ();
% push @locations, $cust_location
% if !$cust_main && $cust_location && $cust_location->locationnum>0;
-% foreach my $loc ( @locations ) {
+% foreach my $loc ( sort $location_sort @locations ) {
<OPTION VALUE="<% $loc->locationnum %>"
<% $locationnum == $loc->locationnum ? 'SELECTED' : '' %>
><% $loc->line |h %>
@@ -223,6 +223,13 @@ if ( $locationnum && $locationnum != -1 ) {
}
}
+my $location_sort = sub {
+ $a->country cmp $b->country
+ or $a->city cmp $b->city
+ or $a->address1 cmp $b->address1
+ or $a->address2 cmp $b->address2
+};
+
my $disabled = ( $locationnum == -1 || ($editable && $locationnum) )
? ''
: 'DISABLED';