basics customer view is default in 3.0+
[freeside.git] / httemplate / misc / xmlhttp-cust_main-search.cgi
index 7140b20..68c5bf5 100644 (file)
@@ -12,7 +12,7 @@
 %   my @cust_main = smart_search( 'search' => $string,
 %                                 'no_fuzzy_on_exact' => 1, #pref?
 %                               );
-%   my $return = [ map [ $_->custnum, $_->name, $_->balance ], @cust_main ];
+%   my $return = [ map [ $_->custnum, $_->name, $_->balance, $_->ucfirst_status, $_->statuscolor ], @cust_main ];
 %     
 <% objToJson($return) %>
 % } elsif ( $sub eq 'invnum_search' ) {
 %   my $return = $inv ? findbycustnum($inv->custnum,0) : [];
 <% objToJson($return) %>
 % } 
+% elsif ( $sub eq 'exact_search' ) {
+%   # XXX possibly should query each element separately
+%   my $hashref = decode_json($cgi->param('arg'));
+%   my @cust_main = qsearch('cust_main', $hashref);
+%   my $return = [];
+%   foreach (@cust_main) {
+%     push @$return, {
+%       custnum => $_->custnum,
+%       name => $_->name_short,
+%       address1 => $_->address1,
+%       city => $_->city,
+%     };
+%   }
+<% objToJson($return) %>
+% }
 <%init>
 
 my $conf = new FS::Conf;
@@ -33,13 +48,13 @@ sub findbycustnum{
     my $agent = shift;
     my $hashref = { 'custnum' => $custnum };
     $hashref = { 'agent_custid' => $custnum } if $agent;
-    my $cust_main = qsearchs({
+    my $c = qsearchs({
                'table'   => 'cust_main',
                'hashref' => $hashref,
                'extra_sql' => ' AND '. $FS::CurrentUser::CurrentUser->agentnums_sql,
                });
-   return [ $cust_main->custnum, $cust_main->name, $cust_main->balance ] 
-       if $cust_main;
+   return [ $c->custnum, $c->name, $c->balance, $c->ucfirst_status, $c->statuscolor ] 
+       if $c;
    [];
 }
 </%init>