From b5d9087e43d24bfa76ca1d87480cc7d95e85c285 Mon Sep 17 00:00:00 2001 From: Ivan Kohler Date: Thu, 27 Apr 2017 09:23:26 -0700 Subject: [PATCH] now that quotations in v4 simulate a real billing, need a workaround for packages that start on hold, RT#75646 --- FS/FS/cust_pkg.pm | 7 ++++++- FS/FS/quotation.pm | 1 + 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/FS/FS/cust_pkg.pm b/FS/FS/cust_pkg.pm index 039943e52..e2f7aca16 100644 --- a/FS/FS/cust_pkg.pm +++ b/FS/FS/cust_pkg.pm @@ -60,6 +60,8 @@ our $upgrade = 0; #go away after setup+start dates cleaned up for old customers our $cache_enabled = 0; +our $disable_start_on_hold = 0; + sub _simplecache { my( $self, $hashref ) = @_; if ( $cache_enabled && $hashref->{'pkg'} && $hashref->{'plan'} ) { @@ -397,7 +399,10 @@ sub insert { $self->start_date( timelocal_nocheck(0,0,0,1,$mon,$year) ); } - if ($self->susp eq 'now' or $part_pkg->start_on_hold) { + if ( $self->susp eq 'now' + or ( $part_pkg->start_on_hold && ! $disable_start_on_hold ) + ) + { # if the package was ordered on hold: # - suspend it # - don't set the start date (it will be started manually) diff --git a/FS/FS/quotation.pm b/FS/FS/quotation.pm index 2f95425cc..520e11fbd 100644 --- a/FS/FS/quotation.pm +++ b/FS/FS/quotation.pm @@ -698,6 +698,7 @@ sub estimate { } # order packages + local($FS::cust_pkg::disable_start_on_hold) = 1; $error = $fake_self->order(\%pkgnum_of); die "$error (simulating package order)\n" if $error; -- 2.11.0