X-Git-Url: http://git.freeside.biz/gitweb/?a=blobdiff_plain;f=FS%2FFS%2FCron%2Fbreakage.pm;fp=FS%2FFS%2FCron%2Fbreakage.pm;h=631266794aec0ff68f631f76593f5aaad1d4ec6d;hb=29347e1d34d5468994af6e219f00582e525688ae;hp=0000000000000000000000000000000000000000;hpb=dae56fee4a158dc5becbcfb6bbb522c052bf4b13;p=freeside.git diff --git a/FS/FS/Cron/breakage.pm b/FS/FS/Cron/breakage.pm new file mode 100644 index 000000000..631266794 --- /dev/null +++ b/FS/FS/Cron/breakage.pm @@ -0,0 +1,41 @@ +package FS::Cron::breakage; + +use strict; +use base 'Exporter'; +use vars qw( @EXPORT_OK ); +use FS::Conf; +use FS::Record qw(qsearch); +use FS::agent; +#use FS::cust_main; + +@EXPORT_OK = qw ( reconcile_breakage ); + +#freeside-daily %opt +# -v: enable debugging +# -l: debugging level + +sub reconcile_breakage { + return; + #nothing yet + + my $conf = new FS::Conf; + + foreach my $agent (qsearch('agent', {})) { + + my $days = $conf->config('breakage-days', $agent->agentnum) + or next; + + #find customers w/a balance older than $days (and no activity since) + + # - do a one time charge in the total amount of old unapplied payments. + # 'pkg' => 'Breakage', #or whatever. + # 'setuptax' => 'Y', + # 'classnum' => scalar($conf->config('breakage-pkg_class')), + # - use the new $cust_main->charge( 'bill_now' => 1 ) option to generate an invoice, etc. + # - apply_payments_and_credits + + } + +} + +1;