From 94903b12ecba837d8717bcf91b7bcc25556a996a Mon Sep 17 00:00:00 2001 From: aurynn_cmd Date: Thu, 5 Jul 2007 18:44:24 +0000 Subject: Modifications to support toggling of the On-Hold field in the ar and ap tables; An On-Hold toggle button was added to the Invoice Edit page, as well as a selector for All Invoices (default), Active Invoices, and Held Invoices to the AR and AP search pages. Modifications as needed to bring the code in line with linuxpoet's entity patches. git-svn-id: https://ledger-smb.svn.sourceforge.net/svnroot/ledger-smb/trunk@1350 4979c152-3d1c-0410-bac9-87ea11338e46 --- LedgerSMB/IR.pm | 39 +++++++++++++++++++++++++++++++++++++-- 1 file changed, 37 insertions(+), 2 deletions(-) (limited to 'LedgerSMB/IR.pm') diff --git a/LedgerSMB/IR.pm b/LedgerSMB/IR.pm index d651a520..ff0b2704 100644 --- a/LedgerSMB/IR.pm +++ b/LedgerSMB/IR.pm @@ -1044,7 +1044,8 @@ sub retrieve_invoice { SELECT a.invnumber, a.transdate, a.duedate, a.ordnumber, a.quonumber, a.paid, a.taxincluded, a.notes, a.intnotes, a.curr AS currency, - a.vendor_id, a.language_code, a.ponumber + a.vendor_id, a.language_code, a.ponumber, + a.on_hold FROM ap a WHERE id = ?|; $sth = $dbh->prepare($query); @@ -1375,5 +1376,39 @@ sub item_links { $sth->finish; } -1; +sub toggle_on_hold { + + my $self = shift @_; + my $form = shift @_; + + if ($form->{id}) { # it's an existing (.. probably) invoice. + + my $dbh = $form->{dbh}; + my $sth = $dbh->prepare("SELECT on_hold from ar where ar.id = ?"); + $sth->execute($form->{id}); + my $state = $sth->fetchrow_array; + my $sth; + my $n_s; # new state + if ($state[0] == 't') { + + # Turn it off + $n_s = 'f'; + + } else { + $n_s = 't'; + } + + my $sth = $dbh->prepare("update ar set on_hold = ?::boolean where ar.id = ?"); + my $code = $dbh->execute($ns, $form->{id}); + + return 1; + + } else { # This shouldn't even be possible, but check for it anyway. + + # Definitely, DEFINITELY check it. + # happily return 0. Find out about proper error states. + return 0; + } +} +1; \ No newline at end of file -- cgit v1.2.3