summaryrefslogtreecommitdiff
path: root/FS/FS/cust_main_Mixin.pm
diff options
context:
space:
mode:
authorivan <ivan>2009-12-19 20:29:48 +0000
committerivan <ivan>2009-12-19 20:29:48 +0000
commitb06c6c8f6b6ae1193ac23ea30e24704aa913152c (patch)
tree5fc3bdb28a222233b89f2febdcbeb0d9966655a5 /FS/FS/cust_main_Mixin.pm
parent8a9f1d5a5412e689ae91a8036f9e5fa2a4b163ee (diff)
fix event report w/ a customer status
Diffstat (limited to 'FS/FS/cust_main_Mixin.pm')
-rw-r--r--FS/FS/cust_main_Mixin.pm20
1 files changed, 11 insertions, 9 deletions
diff --git a/FS/FS/cust_main_Mixin.pm b/FS/FS/cust_main_Mixin.pm
index 5a29a4c..3dde95f 100644
--- a/FS/FS/cust_main_Mixin.pm
+++ b/FS/FS/cust_main_Mixin.pm
@@ -2,6 +2,7 @@ package FS::cust_main_Mixin;
use strict;
use vars qw( $DEBUG $me );
+use Carp qw( confess );
use FS::UID qw(dbh);
use FS::cust_main;
@@ -255,21 +256,22 @@ sub cust_statuscolor {
=item cancelled_sql
-Given an object that contains fields from cust_main (say, from a JOINed
-search; see httemplate/search/ for examples), returns the equivalent of the
-corresponding FS::cust_main method, or "0" if this object is not linked to
-a customer.
+Class methods that return SQL framents, equivalent to the corresponding
+FS::cust_main method.
=cut
+# my \$self = shift;
+# \$self->cust_linked
+# ? FS::cust_main::${sub}_sql(\$self)
+# : '0';
+
foreach my $sub (qw( prospect active inactive suspended cancelled )) {
eval "
sub ${sub}_sql {
- my \$self = shift;
- \$self->cust_linked
- ? FS::cust_main::${sub}_sql(\$self)
- : '0';
- }
+ confess 'cust_main_Mixin ${sub}_sql called with object' if ref(\$_[0]);
+ 'cust_main.custnum IS NOT NULL AND '. FS::cust_main->${sub}_sql();
+ }
";
die $@ if $@;
}