From ae442db01f156b47a82c19bb49a030feadd52662 Mon Sep 17 00:00:00 2001 From: abijah Date: Tue, 7 Jul 2009 04:37:04 +0000 Subject: [PATCH] First pass at having invoice support multiple charges, just like receipt/payment. It works well, but I know we still need a better solution for income accounts, and it hasn't been robustly tested yet. git-svn-id: file:///svn-source/pmgr/branches/invoice_receipt_20090629/site@243 97e9348a-65ac-dc4b-aefc-98561f571b83 --- controllers/leases_controller.php | 5 - controllers/transactions_controller.php | 8 +- views/leases/invoice.ctp | 171 ++++++++++++++++++------ 3 files changed, 132 insertions(+), 52 deletions(-) diff --git a/controllers/leases_controller.php b/controllers/leases_controller.php index 3efe50e..7513f7c 100644 --- a/controllers/leases_controller.php +++ b/controllers/leases_controller.php @@ -202,11 +202,6 @@ class LeasesController extends AppController { // Of course, the late charge should come from the late_schedule $charge['amount'] = 10.00; - $redirect = array('controller' => 'leases', - 'action' => 'view', - $id); - $this->set(compact('redirect')); - $title = ('Lease #' . $lease['Lease']['number'] . ': ' . $lease['Unit']['name'] . ': ' . $lease['Customer']['name'] . ': Charge Entry'); diff --git a/controllers/transactions_controller.php b/controllers/transactions_controller.php index bcc80f8..c73ddd5 100644 --- a/controllers/transactions_controller.php +++ b/controllers/transactions_controller.php @@ -118,11 +118,9 @@ class TransactionsController extends AppController { die("

INVOICE FAILED

"); } - // Comment this out to debug - $this->redirect($this->data['redirect']); - - pr($this->data['redirect']); - $this->render('/empty'); + $this->layout = null; + $this->autoLayout = false; + $this->autoRender = false; } diff --git a/views/leases/invoice.ctp b/views/leases/invoice.ctp index d829bfd..5e44970 100644 --- a/views/leases/invoice.ctp +++ b/views/leases/invoice.ctp @@ -30,14 +30,79 @@ $lease_grid_setup['onHeaderClick'] = array element('form_table', ), ))); -echo ('
' . "\n"); -echo $this->element('form_table', - array('class' => "item invoice ledger-entry entry", - //'with_name_after' => ':', - 'field_prefix' => 'LedgerEntry.0', - 'fields' => array - ("charge_type" => array('opts' => - array('options' => - array('rent' => 'Rent', - 'late' => 'Late Charge'), - 'value' => - (isset($charge['type']) - ? $charge['type'] - : null) - ), - ), - "amount" => array('opts' => - array('value' => - (isset($charge['amount']) - ? $charge['amount'] - : null) - ), - ), - "comment" => array('opts' => array('size' => 50)), - ))); - - -// Set up a redirect page. I use lower case 'redirect' here -// to avoid the model convention, which starts with upper-case. -foreach ($redirect AS $name => $value) { - echo $form->input("redirect.$name", - array('type' => 'hidden', - 'value' => $value, - )); -} -echo $form->end('Generate Invoice'); - +echo $form->submit('Generate Invoice') . "\n"; ?> +
+ Charges + +
+
+ Add Another Charge +
+
+ +end('Generate Invoice'); ?> + +

Request

+

Response

+

Output

+ + +Clear Debug Output