summaryrefslogtreecommitdiff
path: root/httemplate
diff options
context:
space:
mode:
authorivan <ivan>2010-12-04 03:29:06 +0000
committerivan <ivan>2010-12-04 03:29:06 +0000
commitd2521e0bbe5f2ed8f4b800da75967c98abc7b797 (patch)
tree78a108d44fb90be5ab641b98ef1d189ea063e651 /httemplate
parentf626fd72d814be2245c5cf7b2fd3e63b0e8164b4 (diff)
sort locations in dropdown, RT#10766
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';