[freeside-commits] branch master updated. ce7d68e984aab0075f87cf3fa5a55ee4083fadd2
Ivan
ivan at 420.am
Sat Aug 26 15:01:04 PDT 2017
The branch, master has been updated
via ce7d68e984aab0075f87cf3fa5a55ee4083fadd2 (commit)
from 13bcd704deec03008853c18a0258e031b62e2ec6 (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
commit ce7d68e984aab0075f87cf3fa5a55ee4083fadd2
Author: Ivan Kohler <ivan at freeside.biz>
Date: Sat Aug 26 15:00:59 2017 -0700
referral status search, RT#75757
diff --git a/FS/FS/cust_main/Search.pm b/FS/FS/cust_main/Search.pm
index 09558b8..4eab474 100644
--- a/FS/FS/cust_main/Search.pm
+++ b/FS/FS/cust_main/Search.pm
@@ -872,10 +872,24 @@ sub search {
##
# with referrals
##
- if ( $params->{'with_referrals'} =~ /^\s*(\d+)\s*$/ ) {
+ if ( $params->{with_referrals} =~ /^\s*(\d+)\s*$/ ) {
+
+ my $n = $1;
+
+ # referral status
+ my $and_status = '';
+ if ( grep { $params->{referral_status} eq $_ } FS::cust_main->statuses() ) {
+ my $method = $params->{referral_status}. '_sql';
+ $and_status = ' AND '. FS::cust_main->$method();
+ $and_status =~ s/ cust_main\./ referred_cust_main./g;
+ }
+
push @where,
- " $1 <= ( SELECT COUNT(*) FROM cust_main AS referred_cust_main
- WHERE cust_main.custnum = referred_cust_main.referral_custnum )";
+ " $n <= ( SELECT COUNT(*) FROM cust_main AS referred_cust_main
+ WHERE cust_main.custnum = referred_cust_main.referral_custnum
+ $and_status
+ )";
+
}
##
diff --git a/httemplate/search/cust_main.html b/httemplate/search/cust_main.html
index 41309fd..c897879 100755
--- a/httemplate/search/cust_main.html
+++ b/httemplate/search/cust_main.html
@@ -55,7 +55,7 @@ my @scalars = qw (
all_tags
all_pkg_classnums
any_pkg_status
- with_referrals
+ with_referrals referral_status
);
for my $param ( @scalars ) {
diff --git a/httemplate/search/report_cust_main.html b/httemplate/search/report_cust_main.html
index 2a313a1..14e7844 100755
--- a/httemplate/search/report_cust_main.html
+++ b/httemplate/search/report_cust_main.html
@@ -107,13 +107,24 @@
</TD>
</TR>
+ </TABLE>
+ <BR>
+
+ <FONT CLASS="fsinnerbox-title"><% emt('Referral search options') %></FONT>
+ <TABLE CLASS="fsinnerbox">
+
<& /elements/tr-input-text.html,
- label => emt('At least this many referrals'),
+ label => emt('At least this many'),
field => 'with_referrals',
size => 4,
maxlength => 4,
&>
+ <& /elements/tr-select-cust_main-status.html,
+ label => emt('Referral status'),
+ field => 'referral_status',
+ &>
+
</TABLE>
<BR>
-----------------------------------------------------------------------
Summary of changes:
FS/FS/cust_main/Search.pm | 20 +++++++++++++++++---
httemplate/search/cust_main.html | 2 +-
httemplate/search/report_cust_main.html | 13 ++++++++++++-
3 files changed, 30 insertions(+), 5 deletions(-)
More information about the freeside-commits
mailing list