diff options
Diffstat (limited to 'httemplate/search/cust_main.cgi')
-rwxr-xr-x | httemplate/search/cust_main.cgi | 15 |
1 files changed, 12 insertions, 3 deletions
diff --git a/httemplate/search/cust_main.cgi b/httemplate/search/cust_main.cgi index 1ddafae0b..36e4374ee 100755 --- a/httemplate/search/cust_main.cgi +++ b/httemplate/search/cust_main.cgi @@ -62,8 +62,13 @@ % if ( $cgi->param('browse') ) { % my $query = $cgi->param('browse'); % if ( $query eq 'custnum' ) { -% $sortby=\*custnum_sort; -% $orderby = "ORDER BY custnum"; +% if ( $conf->exists('cust_main-default_agent_custid') ) { +% $sortby=\*display_custnum_sort; +% $orderby = "ORDER BY CASE WHEN agent_custid IS NOT NULL AND agent_custid != '' THEN CAST(agent_custid AS BIGINT) ELSE custnum END"; +% } else { +% $sortby=\*custnum_sort; +% $orderby = "ORDER BY custnum"; +% } % } elsif ( $query eq 'last' ) { % $sortby=\*last_sort; % $orderby = "ORDER BY LOWER(last || ' ' || first)"; @@ -379,7 +384,7 @@ % my $statuscol = $cust_main->statuscolor; <TR> - <TD CLASS="grid" ALIGN="right" BGCOLOR="<% $bgcolor %>" ROWSPAN=<% $rowspan || 1 %>><A HREF="<% $view %>"><FONT SIZE=-1><% $custnum %></FONT></A></TD> + <TD CLASS="grid" ALIGN="right" BGCOLOR="<% $bgcolor %>" ROWSPAN=<% $rowspan || 1 %>><A HREF="<% $view %>"><FONT SIZE=-1><% $cust_main->display_custnum %></FONT></A></TD> <TD CLASS="grid" ALIGN="center" BGCOLOR="<% $bgcolor %>" ROWSPAN=<% $rowspan || 1 %>><FONT SIZE="-1" COLOR="#<% $statuscol %>"><B><% ucfirst($status) %></B></FONT></TD> <TD CLASS="grid" BGCOLOR="<% $bgcolor %>" ROWSPAN=<% $rowspan || 1 %>><A HREF="<% $view %>"><FONT SIZE=-1><% "$last, $first" %></FONT></A></TD> <TD CLASS="grid" BGCOLOR="<% $bgcolor %>" ROWSPAN=<% $rowspan || 1 %>><% $pcompany %></TD> @@ -538,6 +543,10 @@ % || lc($a->first) cmp lc($b->first);; %} % +%sub display_custnum_sort { +% $a->display_custnum <=> $b->display_custnum; +%} +% %sub custnum_sort { % $a->getfield('custnum') <=> $b->getfield('custnum'); %} |