summaryrefslogtreecommitdiff
path: root/FS/FS/cust_main/Search.pm
diff options
context:
space:
mode:
authorMark Wells <mark@freeside.biz>2015-11-18 13:07:47 -0800
committerMark Wells <mark@freeside.biz>2015-11-18 13:07:47 -0800
commitb2fd002f3285b70311642f8ff0025598d42bd16e (patch)
tree8005ab27d04c8aaaa7e9bfd10a9ba0f48cafd967 /FS/FS/cust_main/Search.pm
parent1daa37e733b9e972e5328503374130a423d02836 (diff)
track customer invoice destination emails using contact_email, #25536
Diffstat (limited to 'FS/FS/cust_main/Search.pm')
-rw-r--r--FS/FS/cust_main/Search.pm26
1 files changed, 11 insertions, 15 deletions
diff --git a/FS/FS/cust_main/Search.pm b/FS/FS/cust_main/Search.pm
index 097f2fb..c8a084c 100644
--- a/FS/FS/cust_main/Search.pm
+++ b/FS/FS/cust_main/Search.pm
@@ -531,10 +531,12 @@ sub email_search {
if $DEBUG;
push @cust_main,
- map $_->cust_main,
+ map { $_->cust_main }
+ map { $_->cust_contact }
+ map { $_->contact }
qsearch( {
- 'table' => 'cust_main_invoice',
- 'hashref' => { 'dest' => $email },
+ 'table' => 'contact_email',
+ 'hashref' => { 'emailaddress' => $email },
}
);
@@ -808,30 +810,24 @@ sub search {
##
push @where,
- 'EXISTS ( SELECT 1 FROM cust_main_invoice
- WHERE cust_main_invoice.custnum = cust_main.custnum
- AND length(dest) > 5
- )' # AND dest LIKE '%@%'
+ 'EXISTS ( SELECT 1 FROM contact_email
+ JOIN cust_contact USING (contactnum)
+ WHERE cust_contact.custnum = cust_main.custnum
+ )'
if $params->{'with_email'};
##
# "with postal mail invoices" checkbox
##
- push @where,
- "EXISTS ( SELECT 1 FROM cust_main_invoice
- WHERE cust_main_invoice.custnum = cust_main.custnum
- AND dest = 'POST' )"
+ push @where, "cust_main.postal_invoice = 'Y'"
if $params->{'POST'};
##
# "without postal mail invoices" checkbox
##
- push @where,
- "NOT EXISTS ( SELECT 1 FROM cust_main_invoice
- WHERE cust_main_invoice.custnum = cust_main.custnum
- AND dest = 'POST' )"
+ push @where, "cust_main.postal_invoice IS NULL"
if $params->{'no_POST'};
##