X-Git-Url: http://git.freeside.biz/gitweb/?a=blobdiff_plain;f=FS%2FFS%2Fpart_bill_event.pm;h=86f929424eeba519415af9185493cbb3360472a0;hb=92fa788fb842baab8fa185e159d8effde739bd74;hp=70c8a56ece3f8ba4be01a72fb75acba62efd2e38;hpb=32e8c2a2a58428acd539d880357c76720334c011;p=freeside.git diff --git a/FS/FS/part_bill_event.pm b/FS/FS/part_bill_event.pm index 70c8a56ec..86f929424 100644 --- a/FS/FS/part_bill_event.pm +++ b/FS/FS/part_bill_event.pm @@ -37,7 +37,7 @@ FS::Record. The following fields are currently supported: =item eventpart - primary key -=item payby - CARD, BILL, or COMP +=item payby - CARD, DCRD, CHEK, DCHK, LECB, BILL, or COMP =item event - event name @@ -124,7 +124,9 @@ sub check { $c =~ /^\s*\$cust_main\->(suspend|cancel|invoicing_list_addpost|bill|collect)\(\);\s*("";)?\s*$/ - or $c =~ /^\s*\$cust_bill\->(comp|realtime_card|realtime_card_cybercash|batch_card|send)\(\);\s*$/ + or $c =~ /^\s*\$cust_bill\->(comp|realtime_(card|ach|lec)|realtime_card_cybercash|batch_card|send)\(\);\s*$/ + + or $c =~ /^\s*\$cust_bill\->send\(\'\w+\'\);\s*$/ or $c =~ /^\s*\$cust_main\->apply_payments; \$cust_main->apply_credits; "";\s*$/ @@ -137,8 +139,8 @@ sub check { } - $self->ut_numbern('eventpart') - || $self->ut_enum('payby', [qw( CARD BILL COMP )] ) + my $error = $self->ut_numbern('eventpart') + || $self->ut_enum('payby', [qw( CARD DCRD CHEK DCHK LECB BILL COMP )] ) || $self->ut_text('event') || $self->ut_anything('eventcode') || $self->ut_number('seconds') @@ -147,6 +149,26 @@ sub check { || $self->ut_textn('plan') || $self->ut_anything('plandata') ; + return $error if $error; + + #quelle kludge + if ( $self->plandata =~ /^templatename\s+(.*)$/ ) { + my $name= $1; + unless ( $conf->exists("invoice_template_$name") ) { + $conf->set( + "invoice_template_$name" => + join("\n", $conf->config('invoice_template') ) + ); + } + unless ( $conf->exists("invoice_latex_$name") ) { + $conf->set( + "invoice_latex_$name" => + join("\n", $conf->config('invoice_latex') ) + ); + } + } + + $self->SUPER::check; } =back