use FS::part_pkg;
use FS::part_bill_event;
use FS::cust_bill_event;
+use FS::Msgcat qw(gettext);
@ISA = qw( FS::Record );
=item agentnum - agent (see L<FS::agent>)
-=item refnum - referral (see L<FS::part_referral>)
+=item refnum - Advertising source (see L<FS::part_referral>)
=item first - name
|| $self->ut_numbern('referral_custnum')
;
#barf. need message catalogs. i18n. etc.
- $error .= "Please select a referral."
+ $error .= "Please select a advertising source."
if $error =~ /^Illegal or empty \(numeric\) refnum: /;
return $error if $error;
return "Unknown agent"
unless qsearchs( 'agent', { 'agentnum' => $self->agentnum } );
- return "Unknown referral"
+ return "Unknown refnum"
unless qsearchs( 'part_referral', { 'refnum' => $self->refnum } );
return "Unknown referring custnum ". $self->referral_custnum
my $payinfo = $self->payinfo;
$payinfo =~ s/\D//g;
$payinfo =~ /^(\d{13,16})$/
- or return "Illegal credit card number: ". $self->payinfo;
+ or return gettext('invalid_catd'); # . ": ". $self->payinfo;
$payinfo = $1;
$self->payinfo($payinfo);
validate($payinfo)
- or return "Illegal credit card number: ". $self->payinfo;
- return "Unknown card type" if cardtype($self->payinfo) eq "Unknown";
+ or return gettext('invalid_catd'); # . ": ". $self->payinfo;
+ return gettext('unknown_card_type')
+ if cardtype($self->payinfo) eq "Unknown";
} elsif ( $self->payby eq 'BILL' ) {
$self->payname( $self->first. " ". $self->getfield('last') );
} else {
$self->payname =~ /^([\w \,\.\-\']+)$/
- or return "Illegal billing name: ". $self->payname;
+ or return gettext('illegal_name'). " payname: ". $self->payname;
$self->payname($1);
}
grep { $_->cancel } $self->ncancelled_pkgs;
}
+=item agent
+
+Returns the agent (see L<FS::agent>) for this customer.
+
+=cut
+
+sub agent {
+ my $self = shift;
+ qsearchs( 'agent', { 'agent' => $self->agentnum } );
+}
+
=item bill OPTIONS
Generates invoices (see L<FS::cust_bill>) for this customer. Usually used in
qsearch('part_bill_event', { 'payby' => $self->payby,
'disabled' => '', } )
) {
+
+ last unless $cust_bill->owed > 0; #don't run subsequent events if owed=0
+
warn "calling invoice event (". $part_bill_event->eventcode. ")\n"
if $Debug;
my $cust_main = $self; #for callback