add options to auto-generate agent_custid and display it as the customer number,...
[freeside.git] / httemplate / search / cust_main.cgi
index 1ddafae..36e4374 100755 (executable)
 %  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)";
 %    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>
 %  || 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');
 %}