Added some lease operations to the customer menu. If there is only one current lease, this works great, and if there are multiple, it works as if it were performed from the top level, ignoring the fact that the user clicked the operation from the customer page.
git-svn-id: file:///svn-source/pmgr/branches/pre_0.1_work_20090819@769 97e9348a-65ac-dc4b-aefc-98561f571b83
This commit is contained in:
@@ -244,36 +244,58 @@ class CustomersController extends AppController {
|
||||
$outstanding_deposit = $this->Customer->securityDepositBalance($id);
|
||||
|
||||
// Figure out if this customer has any non-closed leases
|
||||
$show_moveout = false;
|
||||
$show_payment = false;
|
||||
$show_moveout = false; $moveout_lease_id = null;
|
||||
$show_payment = false; $payment_lease_id = null;
|
||||
foreach ($customer['Lease'] AS $lease) {
|
||||
if (!isset($lease['close_date']))
|
||||
if (!isset($lease['close_date'])) {
|
||||
if ($show_payment)
|
||||
$payment_lease_id = null;
|
||||
else
|
||||
$payment_lease_id = $lease['id'];
|
||||
$show_payment = true;
|
||||
if (!isset($lease['moveout_date']))
|
||||
}
|
||||
if (!isset($lease['moveout_date'])) {
|
||||
if ($show_moveout)
|
||||
$moveout_lease_id = null;
|
||||
else
|
||||
$moveout_lease_id = $lease['id'];
|
||||
$show_moveout = true;
|
||||
}
|
||||
}
|
||||
|
||||
// Set up dynamic menu items
|
||||
|
||||
$this->addSideMenuLink('Edit',
|
||||
array('action' => 'edit', $id), null,
|
||||
'ACTION');
|
||||
|
||||
$this->addSideMenuLink('Move-In',
|
||||
array('action' => 'move_in', $id), null,
|
||||
'ACTION');
|
||||
|
||||
/* if ($show_moveout) { */
|
||||
/* $this->addSideMenuLink('Move-Out', */
|
||||
/* array('action' => 'move_out', $id), null, */
|
||||
/* 'ACTION'); */
|
||||
/* } */
|
||||
|
||||
if ($show_payment || $outstanding_balance > 0)
|
||||
$this->addSideMenuLink('New Receipt',
|
||||
array('action' => 'receipt', $id), null,
|
||||
'ACTION');
|
||||
|
||||
if ($show_payment) {
|
||||
/* $ids = $this->Customer->leaseIds($id, true); */
|
||||
/* if (count($ids) == 1) */
|
||||
/* $lease_id = $ids[0]; */
|
||||
/* else */
|
||||
/* $lease_id = null; */
|
||||
|
||||
$this->addSideMenuLink('New Invoice',
|
||||
array('controller' => 'leases',
|
||||
'action' => 'invoice',
|
||||
$payment_lease_id), null,
|
||||
'ACTION');
|
||||
}
|
||||
|
||||
$this->addSideMenuLink('Move-In',
|
||||
array('action' => 'move_in', $id), null,
|
||||
'ACTION');
|
||||
|
||||
if ($show_moveout) {
|
||||
$this->addSideMenuLink('Move-Out',
|
||||
array('controller' => 'leases',
|
||||
'action' => 'move_out',
|
||||
$moveout_lease_id), null,
|
||||
'ACTION');
|
||||
}
|
||||
|
||||
if (!$show_moveout && $outstanding_balance > 0)
|
||||
$this->addSideMenuLink('Write-Off',
|
||||
array('action' => 'bad_debt', $id), null,
|
||||
@@ -284,6 +306,10 @@ class CustomersController extends AppController {
|
||||
array('action' => 'refund', $id), null,
|
||||
'ACTION');
|
||||
|
||||
$this->addSideMenuLink('Edit',
|
||||
array('action' => 'edit', $id), null,
|
||||
'ACTION');
|
||||
|
||||
// Prepare to render.
|
||||
$title = 'Customer: ' . $customer['Customer']['name'];
|
||||
$this->set(compact('customer', 'title',
|
||||
|
||||
Reference in New Issue
Block a user