summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorIvan Kohler <ivan@freeside.biz>2017-10-01 15:17:35 -0700
committerIvan Kohler <ivan@freeside.biz>2017-10-01 15:17:35 -0700
commit467d7dc761ec4492aa285771920be1def76ea831 (patch)
tree00efe0f06a3131e4519acf1ed1028e14a0463453
parentcd1555c36924e21a9894b29071d76911ec277d9a (diff)
sort by referral count, RT#75757
-rw-r--r--FS/FS/cust_main/Search.pm26
-rwxr-xr-xhttemplate/search/cust_main.html11
2 files changed, 23 insertions, 14 deletions
diff --git a/FS/FS/cust_main/Search.pm b/FS/FS/cust_main/Search.pm
index 21d5986..2ec87cd 100644
--- a/FS/FS/cust_main/Search.pm
+++ b/FS/FS/cust_main/Search.pm
@@ -1049,8 +1049,9 @@ sub search {
FS::UI::Web::cust_sql_fields($params->{'cust_fields'}),
);
- my(@extra_headers) = ();
- my(@extra_fields) = ();
+ my @extra_headers = ();
+ my @extra_fields = ();
+ my @extra_sort_fields = ();
## search contacts
if ($params->{'contacts'}) {
@@ -1134,6 +1135,7 @@ sub search {
my $p = $a[!.--$headercount. q!];
$p;
};!;
+ unshift @extra_sort_fields, '';
}
}
@@ -1149,21 +1151,23 @@ sub search {
unshift @extra_headers, 'Referrals';
unshift @extra_fields, 'num_referrals';
+ unshift @extra_sort_fields, 'num_referrals';
}
my $select = join(', ', @select);
my $sql_query = {
- 'table' => 'cust_main',
- 'select' => $select,
- 'addl_from' => $addl_from,
- 'hashref' => {},
- 'extra_sql' => $extra_sql,
- 'order_by' => $orderby,
- 'count_query' => $count_query,
- 'extra_headers' => \@extra_headers,
- 'extra_fields' => \@extra_fields,
+ 'table' => 'cust_main',
+ 'select' => $select,
+ 'addl_from' => $addl_from,
+ 'hashref' => {},
+ 'extra_sql' => $extra_sql,
+ 'order_by' => $orderby,
+ 'count_query' => $count_query,
+ 'extra_headers' => \@extra_headers,
+ 'extra_fields' => \@extra_fields,
+ 'extra_sort_fields' => \@extra_sort_fields,
};
$sql_query;
diff --git a/httemplate/search/cust_main.html b/httemplate/search/cust_main.html
index cb8d66e..d9499e9 100755
--- a/httemplate/search/cust_main.html
+++ b/httemplate/search/cust_main.html
@@ -13,6 +13,10 @@
\&FS::UI::Web::cust_fields,
@extra_fields,
],
+ #'sort_fields' => [
+ # FS::UI::Web::cust_sort_fields(),
+ # @extra_sort_fields,
+ #],
'color' => [ FS::UI::Web::cust_colors(),
map '', @extra_fields
],
@@ -119,9 +123,10 @@ $search_hash{'current_balance'} =
###
my $sql_query = FS::cust_main::Search->search(\%search_hash);
-my $count_query = delete($sql_query->{'count_query'});
-my @extra_headers = @{ delete($sql_query->{'extra_headers'}) };
-my @extra_fields = @{ delete($sql_query->{'extra_fields'}) };
+my $count_query = delete($sql_query->{'count_query'});
+my @extra_headers = @{ delete($sql_query->{'extra_headers'}) };
+my @extra_fields = @{ delete($sql_query->{'extra_fields'}) };
+my @extra_sort_fields = @{ delete($sql_query->{'extra_sort_fields'}) };
my $link = [ "${p}view/cust_main.cgi?", 'custnum' ];