X-Git-Url: http://git.roojs.org/?a=blobdiff_plain;f=DataObjects%2FCore_notify_server.php;h=dd24be1cc70d50ab4dc4992222f06472a02768f9;hb=6f7f328d7ac5aee73289925656a2e3a1eb7d63bd;hp=ac044ae9ae0a6d757e50a14a87e78b0dc070864c;hpb=f17ae9e206c7151909370602ecb03de5e7945c69;p=Pman.Core diff --git a/DataObjects/Core_notify_server.php b/DataObjects/Core_notify_server.php index ac044ae9..dd24be1c 100644 --- a/DataObjects/Core_notify_server.php +++ b/DataObjects/Core_notify_server.php @@ -75,7 +75,7 @@ class Pman_Core_DataObjects_Core_notify_server extends DB_DataObject // most services should call this first.. - function getCurrent($notify) + function getCurrent($notify, $force = false) { static $current = false;; @@ -84,13 +84,26 @@ class Pman_Core_DataObjects_Core_notify_server extends DB_DataObject } $ns = DB_DataObject::factory('core_notify_server'); + $ns->poolname = $notify->poolname; $ns->is_active = 1; $ns->hostname = gethostname(); - if (!$ns->count()) { + $ns->limit(1); + if ($ns->find(true)) { + $current = $ns; + return $ns; + } + if (!$force) { + $notify->jerr("Server not found for this server " . gethostname() . " in core_notify_server" ); + } + // fallback to any server - if we are using force. (this is so helo will work...) + + $ns = DB_DataObject::factory('core_notify_server'); + $ns->is_active = 1; + $ns->hostname = gethostname(); + if (!$ns->find(true)) { $notify->jerr("Server not found for this server " . gethostname() . " in core_notify_server" ); } - $ns->find(true); $current = $ns; return $ns; }