summaryrefslogtreecommitdiff
path: root/httemplate
diff options
context:
space:
mode:
authorivan <ivan>2008-10-10 01:15:50 +0000
committerivan <ivan>2008-10-10 01:15:50 +0000
commit987b49fbf7754b4954018e258d27a6ea72499f84 (patch)
tree71d6b6d1b3c59e1087b76b095a6eba06604d2ccf /httemplate
parent9e378e221e9acf18dd294d6e8e3c2fd0b5f26b09 (diff)
add options to auto-generate agent_custid and display it as the customer number, RT#4099
Diffstat (limited to 'httemplate')
-rwxr-xr-xhttemplate/edit/cust_main.cgi2
-rw-r--r--httemplate/index.html2
-rwxr-xr-xhttemplate/search/cust_main.cgi15
-rw-r--r--httemplate/view/cust_main/misc.html50
4 files changed, 38 insertions, 31 deletions
diff --git a/httemplate/edit/cust_main.cgi b/httemplate/edit/cust_main.cgi
index 10086a4dd..8de73c513 100755
--- a/httemplate/edit/cust_main.cgi
+++ b/httemplate/edit/cust_main.cgi
@@ -12,7 +12,7 @@
<INPUT TYPE="hidden" NAME="custnum" VALUE="<% $custnum %>">
% if ( $custnum ) {
- Customer #<B><% $custnum %></B> -
+ Customer #<B><% $cust_main->display_custnum %></B> -
<B><FONT COLOR="#<% $cust_main->statuscolor %>">
<% ucfirst($cust_main->status) %>
</FONT></B>
diff --git a/httemplate/index.html b/httemplate/index.html
index 60ab26f86..c813991f9 100644
--- a/httemplate/index.html
+++ b/httemplate/index.html
@@ -36,7 +36,7 @@
% next unless $cust_main;
<TR>
- <TD CLASS="grid" BGCOLOR="<% $bgcolor %>"><A HREF="view/cust_main.cgi?<% $custnum %>"><% $custnum %>: <% $cust_main->name %></A></TD>
+ <TD CLASS="grid" BGCOLOR="<% $bgcolor %>"><A HREF="view/cust_main.cgi?<% $custnum %>"><% $cust_main->display_custnum %>: <% $cust_main->name %></A></TD>
</TR>
% if ( $bgcolor eq $bgcolor1 ) {
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');
%}
diff --git a/httemplate/view/cust_main/misc.html b/httemplate/view/cust_main/misc.html
index 9528db243..060da87dd 100644
--- a/httemplate/view/cust_main/misc.html
+++ b/httemplate/view/cust_main/misc.html
@@ -1,41 +1,29 @@
-%
-% my( $cust_main ) = @_;
-% my $conf = new FS::Conf;
-% my $date_format = ($conf->config('date_format') || "%m/%d/%Y");
-%
-
-
<% ntable("#cccccc") %><TR><TD><% &ntable("#cccccc",2) %>
<TR>
<TD ALIGN="right">Customer&nbsp;number</TD>
- <TD BGCOLOR="#ffffff"><% $cust_main->custnum %></TD>
+ <TD BGCOLOR="#ffffff"><% $cust_main->display_custnum %></TD>
</TR>
<TR>
<TD ALIGN="right">Status</TD>
<TD BGCOLOR="#ffffff"><FONT COLOR="#<% $cust_main->statuscolor %>"><B><% ucfirst($cust_main->status) %></B></FONT></TD>
</TR>
-%
-% my @agents = qsearch( 'agent', {} );
-% my $agent;
-% unless ( scalar(@agents) == 1 ) {
-% $agent = qsearchs('agent',{ 'agentnum' => $cust_main->agentnum } );
-%
+%my $agent;
+%if ( $num_agents == 1 ) {
+% my @agents = qsearchs( 'agent', {} );
+% $agent = $agents[0];
+%} else {
+% $agent = qsearchs('agent',{ 'agentnum' => $cust_main->agentnum } );
+ <TR>
+ <TD ALIGN="right">Agent</TD>
+ <TD BGCOLOR="#ffffff"><% $agent->agentnum %>: <% $agent->agent %></TD>
+ </TR>
+% }
-<TR>
- <TD ALIGN="right">Agent</TD>
- <TD BGCOLOR="#ffffff"><% $agent->agentnum %>: <% $agent->agent %></TD>
-</TR>
-%
-% } else {
-% $agent = $agents[0];
-% }
-%
-% if ( $cust_main->agent_custid ) {
-%
-
+% if ( $cust_main->agent_custid
+% && ! $conf->exists('cust_main-default_agent_custid') ) {
<TR>
<TD ALIGN="right">Agent customer ref#</TD>
@@ -109,4 +97,14 @@
% }
</TABLE></TD></TR></TABLE>
+<%init>
+
+my( $cust_main ) = @_;
+my $conf = new FS::Conf;
+my $date_format = ($conf->config('date_format') || "%m/%d/%Y");
+
+my $sth = dbh->prepare('SELECT COUNT(*) FROM agent') or die dbh->errstr;
+$sth->execute or die $sth->errstr;
+my $num_agents = $sth->fetchrow_arrayref->[0];
+</%init>