X-Git-Url: http://git.freeside.biz/gitweb/?a=blobdiff_plain;f=FS%2FFS%2Fcust_bill_ApplicationCommon.pm;h=d4627c0b42bc03266abf82027d1a2d7fb38e221b;hb=a58bd9386e1e5fa1cdd16936fc29093ed67714db;hp=24274e7017e1adef43735204be556779e3ffe66d;hpb=5e05724a635a22776f1b973f5d7e77989da4e048;p=freeside.git diff --git a/FS/FS/cust_bill_ApplicationCommon.pm b/FS/FS/cust_bill_ApplicationCommon.pm index 24274e701..d4627c0b4 100644 --- a/FS/FS/cust_bill_ApplicationCommon.pm +++ b/FS/FS/cust_bill_ApplicationCommon.pm @@ -1,7 +1,7 @@ package FS::cust_bill_ApplicationCommon; use strict; -use vars qw( @ISA $DEBUG $me ); +use vars qw( @ISA $DEBUG $me $skip_apply_to_lineitems_hack ); use List::Util qw(min); use FS::Schema qw( dbdef ); use FS::Record qw( qsearch qsearchs dbh ); @@ -11,6 +11,8 @@ use FS::Record qw( qsearch qsearchs dbh ); $DEBUG = 0; $me = '[FS::cust_bill_ApplicationCommon]'; +$skip_apply_to_lineitems_hack = 0; + =head1 NAME FS::cust_bill_ApplicationCommon - Base class for bill application classes @@ -33,6 +35,8 @@ represent application of things to invoices, currently payments =head1 METHODS +=over 4 + =item insert =cut @@ -111,8 +115,12 @@ Auto-applies this invoice application to specific line items, if possible. sub apply_to_lineitems { my $self = shift; + return '' if $skip_apply_to_lineitems_hack; + my @apply = (); + my $conf = new FS::Conf; + local $SIG{HUP} = 'IGNORE'; local $SIG{INT} = 'IGNORE'; local $SIG{QUIT} = 'IGNORE'; @@ -125,6 +133,8 @@ sub apply_to_lineitems { my $dbh = dbh; my @open = $self->cust_bill->open_cust_bill_pkg; #FOR UPDATE...? + @open = grep { $_->pkgnum == $self->pkgnum } @open + if $conf->exists('pkg-balances') && $self->pkgnum; warn "$me ". scalar(@open). " open line items for invoice ". $self->cust_bill->invnum. ": ". join(', ', @open). "\n" if $DEBUG; @@ -359,6 +369,18 @@ sub cust_bill { qsearchs( 'cust_bill', { 'invnum' => $self->invnum } ); } +=item applied_to_invoice + +Returns a string representing the invoice (see L), for example: +"applied to Invoice #54 (3/20/2008)" + +=cut + +sub applied_to_invoice { + my $self = shift; + 'applied to '. $self->cust_bill->invnum_date_pretty; +} + =item lineitem_breakdown_table =cut