// most services should call this first..
- function getCurrent($notify)
+ function getCurrent($notify, $force = false)
{
static $current = false;;
}
$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;
}
$this->errorHandler("already sent - repeat to early\n");
}
- $this->server = DB_DataObject::Factory('core_notify_server')->getCurrent($this);
- if (!$force && $w->server_id != $this->server->id) {
+ $this->server = DB_DataObject::Factory('core_notify_server')->getCurrent($this, $force);
+ if (!$force && $w->server_id != $this->server->id) {
$this->errorHandler("Server id does not match - use force to try again\n");
}
+
if (!empty($opts['debug'])) {
print_r($w);
$ff = HTML_FlexyFramework::get();