From 2f69ad2ae004a0e0b9cbeb5ec994e7a2916c1bc0 Mon Sep 17 00:00:00 2001 From: Alan Knowles Date: Thu, 18 Nov 2010 17:02:32 +0800 Subject: [PATCH] Lock.php --- Lock.php | 23 ++++++++++++++++++----- 1 file changed, 18 insertions(+), 5 deletions(-) diff --git a/Lock.php b/Lock.php index 6fb4a4fd..0e326409 100644 --- a/Lock.php +++ b/Lock.php @@ -102,23 +102,36 @@ class Pman_Core_Lock extends Pman $cc = clone($curlock); // the user who owns the lock is not logged in.. ?? - their last $curlock->find(); - $u = false; + $users = array(); while ($curlock->fetch()) { $u = DB_DataObject::factory('Person'); $u->get($curlock->person_id); if (!$u->isCurrentlyLoggedIn()) { $cc = clone($curlock); $cc->delete(); - $u = false; continue; } - break; + $users[] = clone($u); } - if ($u) { - $this->jerr("Item is Locked by " . $u->name . ' (' . $u->email . "), Try asking them to log out"); + if (empty($users)) { + return true; } + // situations + + //- the user is logged in, and we can clear it.. + + //- the user is logged in multiple times, on different browser.. + + //- the user is logged in multiple times on the same browser.. + + + + // one of two error messages.. + + $this->jerr("Item is Locked by " . $u->name . ' (' . $u->email . "), Try asking them to log out"); + return true; -- 2.39.2