+
+
+ $w->whereAdd('person_id != '. (int) $event->person_id);
+
+ $watches = $w->fetchAll();
+
+ //print_R($watches);exit;
+
+ $nn = DB_DataObject::Factory('core_notify');
+ $nn->ontable = $event->on_table;
+ $nn->onid = $event->on_id;
+
+ foreach($watches as $watch) {
+ if (!$watch->person_id) { // no people??? bugs in watch table
+ $dom = explode(':',$watch->medium);
+ if (count($dom) != 2) {
+ continue;
+ }
+ $do = DB_DataObject::factory($dom[0]);
+ if (!method_exists($do,$dom[1])) {
+ continue;
+ }
+ $do->{$dom[1]}($event);
+
+ continue;
+ }
+
+ $n = clone($nn);
+ $n->trigger_person_id = $event->person_id;
+ $n->trigger_event_id = $event->id;
+ $n->person_id = $watch->person_id;
+ $n->watch_id = $watch->id;
+
+ // does this watch already have a flag...
+ $nf = clone($n);
+ $nf->whereAdd("sent ><'2000-01-01'");
+ //$nf->whereAdd('sent < act_when');
+ if ($nf->count()) {
+ // we have a item in the queue for that waiting to be sent..
+ continue;