X-Git-Url: http://git.freeside.biz/gitweb/?a=blobdiff_plain;f=FS%2FFS%2Fpart_pkg%2Fsubscription.pm;h=bf644d48c426a3476f1fea797b0da7722b2e1c7e;hb=bb7e827141c9ed68f30765c9ca2ddcd1d760ad2d;hp=bf88f516f5c7a4c158472f2505feb162b5f406d5;hpb=fb4ab1073f0d15d660c6cdc4e07afebf68ef3924;p=freeside.git diff --git a/FS/FS/part_pkg/subscription.pm b/FS/FS/part_pkg/subscription.pm index bf88f516f..bf644d48c 100644 --- a/FS/FS/part_pkg/subscription.pm +++ b/FS/FS/part_pkg/subscription.pm @@ -88,6 +88,11 @@ use FS::part_pkg::flat; sub calc_recur { my($self, $cust_pkg, $sdate, $details, $param ) = @_; my $cutoff_day = $self->option('cutoff_day', 1) || 1; + my $cust_main = $cust_pkg->cust_main; + if ( $cust_main->force_prorate_day and $cust_main->prorate_day ) { + $cutoff_day = $cust_main->prorate_day; + } + my $mnow = $$sdate; my ($sec,$min,$hour,$mday,$mon,$year) = (localtime($mnow) )[0,1,2,3,4,5]; @@ -102,7 +107,7 @@ sub calc_recur { my $discount = $self->calc_discount($cust_pkg, $sdate, $details, $param); - sprintf('%.2f', $br - $discount); + sprintf('%.2f', ($cust_pkg->quantity || 1) * ($br - $discount) ); } 1;