From: Jonathan Prykop Date: Tue, 15 Nov 2016 09:10:32 +0000 (-0600) Subject: Merge branch 'master' of git.freeside.biz:/home/git/freeside X-Git-Url: http://git.freeside.biz/gitweb/?p=freeside.git;a=commitdiff_plain;h=8568f687b70154d27c32fe16b0d018420807ded1;hp=ca870678fbcc49f24e3ccbba899c974938c77336 Merge branch 'master' of git.freeside.biz:/home/git/freeside --- diff --git a/FS/FS/cust_bill_pkg_tax_location.pm b/FS/FS/cust_bill_pkg_tax_location.pm index 7c67c2df8..4a641bec6 100644 --- a/FS/FS/cust_bill_pkg_tax_location.pm +++ b/FS/FS/cust_bill_pkg_tax_location.pm @@ -125,7 +125,7 @@ sub check { || $self->ut_number('pkgnum', 'cust_pkg', 'pkgnum' ) || $self->ut_foreign_key('locationnum', 'cust_location', 'locationnum' ) || $self->ut_money('amount') - || $self->ut_foreign_key('taxable_billpkgnum', 'cust_bill_pkg', 'billpkgnum') + || $self->ut_foreign_keyn('taxable_billpkgnum', 'cust_bill_pkg', 'billpkgnum') ; return $error if $error; diff --git a/FS/FS/cust_bill_pkg_tax_location_void.pm b/FS/FS/cust_bill_pkg_tax_location_void.pm index 7b79e6fa0..bb4a5afb0 100644 --- a/FS/FS/cust_bill_pkg_tax_location_void.pm +++ b/FS/FS/cust_bill_pkg_tax_location_void.pm @@ -119,7 +119,7 @@ sub check { || $self->ut_number('pkgnum', 'cust_pkg', 'pkgnum' ) || $self->ut_foreign_key('locationnum', 'cust_location', 'locationnum' ) || $self->ut_money('amount') - || $self->ut_foreign_key('taxable_billpkgnum', 'cust_bill_pkg_void', 'billpkgnum') + || $self->ut_foreign_keyn('taxable_billpkgnum', 'cust_bill_pkg_void', 'billpkgnum') ; return $error if $error; diff --git a/FS/FS/cust_bill_pkg_void.pm b/FS/FS/cust_bill_pkg_void.pm index 9bfd41f09..2cbfa02d3 100644 --- a/FS/FS/cust_bill_pkg_void.pm +++ b/FS/FS/cust_bill_pkg_void.pm @@ -296,6 +296,7 @@ sub _upgrade_data { # class method my $error; # fix voids with tax from before July 2013, when the taxable_billpkgnum # field was added to the void table + local $FS::Record::nowarn_classload = 1; my $search = FS::Cursor->new({ 'table' => 'cust_bill_pkg_tax_location_void', 'hashref' => { 'taxable_billpkgnum' => '' } @@ -307,11 +308,14 @@ sub _upgrade_data { # class method my $unvoid = qsearchs({ 'table' => 'h_cust_bill_pkg_tax_location', 'hashref' => { 'billpkgtaxlocationnum' => $num }, + 'extra_sql' => ' AND taxable_billpkgnum IS NOT NULL', 'order_by' => ' ORDER BY history_date DESC LIMIT 1' }); if (!$unvoid) { # should never happen - die "billpkgtaxlocationnum $num: could not find pre-void history record to restore taxable_billpkgnum."; + # but should this be fatal? or wait until someone actually tries to + # use the record? + warn "billpkgtaxlocationnum $num: could not find pre-void history record to restore taxable_billpkgnum."; } if ($unvoid) { $void->set('taxable_billpkgnum', $unvoid->taxable_billpkgnum); diff --git a/httemplate/view/cust_main/notes.html b/httemplate/view/cust_main/notes.html index 62502002e..c02af3866 100755 --- a/httemplate/view/cust_main/notes.html +++ b/httemplate/view/cust_main/notes.html @@ -30,7 +30,13 @@ ">(<% mt('Show active attachments') |h %>) -% } elsif($curuser->access_right('View deleted attachments')) { +% } elsif ( $curuser->access_right('View deleted attachments') +% && FS::Record->scalar_sql( +% 'SELECT 1 FROM cust_attachment WHERE custnum = ? '. +% ' AND disabled IS NOT NULL AND disabled > 0 LIMIT 1', +% $custnum ) +% ) +% { ">(<% mt('Show deleted attachments') |h %>)