DataObjects/Core_domain.php
[Pman.Core] / Lock.php
index 4858a94..99c4161 100644 (file)
--- a/Lock.php
+++ b/Lock.php
@@ -100,12 +100,26 @@ class Pman_Core_Lock extends Pman
         }
         // is there a current lock on the item..
         
-        $curlock = DB_DataObject::factory('Core_locking');
+        $curlock = DB_DataObject::factory('core_locking');
         $curlock->setFrom(array(
             'on_id' => $_REQUEST['on_id'],
             'on_table' => strtolower($_REQUEST['on_table'])
         ));
         
+        // remove old locks..
+        $llc = clone($curlock);
+        $exp = date('Y-m-d', strtotime('NOW - 1 WEEK'));
+        $llc->whereAdd("created < '$exp'");
+        if ($llc->count()) {
+            $llc->find();
+            while($llc->fetch()) {
+                $llcd = clone($llc);
+                $llcd->delete();
+           
+            }
+        }
+        
+        
         $curlock_ex = clone($curlock);
         $curlock->person_id = $this->authUser->id;
         
@@ -136,12 +150,13 @@ class Pman_Core_Lock extends Pman
         $ulocks = $curlock->count();
         if ($ulocks) {
             // trash all the locks..
-            $curlock = DB_DataObject::factory('Core_locking');
+            $curlock = DB_DataObject::factory('core_locking');
             $curlock->setFrom(array(
                 'on_id' => $_REQUEST['on_id'],
-                'on_table' => strtolower($_REQUEST['on_table'])
+                'on_table' => strtolower($_REQUEST['on_table']),
+                'person_id' => $this->authUser->id
             ));
-            $curlock->person_id = $this->authUser->id;
+            
             $curlock->find();
             while($curlock->fetch()) {
                 $cc =clone($curlock);