}
$curlock = DB_DataObject::factory('Core_locking');
if (!$curlock->get($_REQUEST['id'])) {
- $this->jerr("No lock exists");
+ $this->jok("No lock exists"); // been deleted before.. probably ok..
}
if ($curlock->person_id != $this->authUser->id) {
+ // this is an error conditon..
$this->jerr("Lock id is invalid");
}
'on_table' => $_REQUEST['on_table']
));
+ $curlock_ex = clone($curlock);
+ $curlock_ex->whereAdd('person_id != '. $this->authUser->id);
- $nlocks = $curlock->count() ;
+
+ $nlocks = $curlock_ex->count() ;
if ($nlocks && empty($_REQUEST['force'])) {
- DB_DataObjecT::debugLevel(1);
+ // DB_DataObjecT::debugLevel(1);
$ar = $curlock->fetchAll('person_id', 'created');
$p = DB_DataObject::factory('Person');
+ $p->selectAdd();
+ $p->selectAdd('id,name,email');
+
$p->whereAddIn('id', array_keys($ar), 'int');
$p->find();
$ret = array();
while ($p->fetch()) {
- $ret[$p->id] = $p->toRooArray();
+ $ret[$p->id] = $p->toArray();
$ret[$p->id]['lock_created'] = $ar[$p->id];
}
$this->jok(array_values($ret));
}
+ // trash the lock if it belongs to current user..
+ $nlocks = $curlock->count();
if ($nlocks) {
// trash all the locks..
$curlock->find();