Added ability to lock unlock any unit, and to track that based on the actual locks that are on it, not the lock status.

git-svn-id: file:///svn-source/pmgr/branches/v0.3_work@1042 97e9348a-65ac-dc4b-aefc-98561f571b83
This commit is contained in:
Abijah
2014-03-03 07:08:29 +00:00
parent 0d59351341
commit 11a9ca903b
2 changed files with 21 additions and 16 deletions

View File

@@ -398,20 +398,8 @@ class UnitsController extends AppController {
$outstanding_deposit = $this->Unit->Lease->securityDepositBalance($unit['CurrentLease']['id']);
}
// If the unit is occupied, but not locked, provide a
// mechanism to do so. This doesn't have to be restricted
// to past due customers. There are times we need to
// overlock customers in good standing, such as if their
// lock breaks, is cut, or missing for any reason.
if ($this->Unit->occupied($unit['Unit']['status']) &&
!$this->Unit->locked($unit['Unit']['status']))
$this->addSideMenuLink('Lock',
array('action' => 'lock', $id), null,
'ACTION');
// If the unit is locked, provide an option to unlock it,
if ($this->Unit->locked($unit['Unit']['status']))
$this->addSideMenuLink('Relock/Unlock',
// Add a mechanism to lock ANY unit, regardless of status
$this->addSideMenuLink($this->Unit->lockCount($id) == 0 ? 'Lock' : 'Relock/Unlock',
array('action' => 'lock', $id), null,
'ACTION');

View File

@@ -248,6 +248,23 @@ class Unit extends AppModel {
}
/**************************************************************************
**************************************************************************
**************************************************************************
* function: lockCount
* - Number of locks on a unit
*/
function lockCount($id) {
$this->prEnter(compact('id'));
return $this->prReturn($this->find
('count', array
('fields' => array("COUNT(Lock.id) AS count"),
'link' => array('Lock'),
'conditions' => array('Unit.id' => $id),
)));
}
/**************************************************************************
**************************************************************************
**************************************************************************