X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=lib%2Fdistribqueuehandler.php;h=036d970f2af9c3be343ffa36d350265b690895ac;hb=c18020561b8a01bbb2b3fc092694a7bb0fde70f9;hp=a7519c1d50729465000f6155f61d31f20e2bbe5f;hpb=99194e03fa50b61f99164674afc949b4bbefd44a;p=quix0rs-gnu-social.git diff --git a/lib/distribqueuehandler.php b/lib/distribqueuehandler.php index a7519c1d50..036d970f2a 100644 --- a/lib/distribqueuehandler.php +++ b/lib/distribqueuehandler.php @@ -17,7 +17,7 @@ * along with this program. If not, see . */ -if (!defined('STATUSNET') && !defined('LACONICA')) { exit(1); } +if (!defined('GNUSOCIAL') && !defined('STATUSNET')) { exit(1); } /** * Base class for queue handlers. @@ -43,7 +43,7 @@ class DistribQueueHandler * @return string */ - function transport() + public function transport() { return 'distrib'; } @@ -58,17 +58,23 @@ class DistribQueueHandler * If this function indicates failure, a warning will be logged * and the item is placed back in the queue to be re-run. * - * @fixme addToInboxes is known to fail sometimes with large recipient sets - * * @param Notice $notice * @return boolean true on success, false on failure */ - function handle($notice) + public function handle(Notice $notice) { - try { - $notice->addToInboxes(); - } catch (Exception $e) { - $this->logit($notice, $e); + // We have to manually add attentions to non-profile subs and non-mentions + $ptAtts = $notice->getAttentionsFromProfileTags(); + foreach (array_keys($ptAtts) as $profile_id) { + $profile = Profile::getKV('id', $profile_id); + if ($profile instanceof Profile) { + try { + common_debug('Adding Attention for '.$notice->getID().' profile '.$profile->getID()); + Attention::saveNew($notice, $profile); + } catch (Exception $e) { + $this->logit($notice, $e); + } + } } try {