public static function send() { $me = new self("global"); $sent = array(); $pastlink = new FutureLink_PastUI(); $feed = $pastlink->feed(); $items = array(); //we send something only if we have something to send if (empty($feed->feed->entry) == false) { foreach ($feed->feed->entry as &$item) { if (empty($item->futurelink->href) || isset($sent[$item->futurelink->hash])) { continue; } $sent[$item->futurelink->hash] = true; $client = new Zend\Http\Client($item->futurelink->href, array('timeout' => 60)); if (!empty($feed->feed->entry)) { $client->setParameterPost(array('protocol' => 'futurelink', 'metadata' => json_encode($feed))); try { $client->setMethod(Zend\Http\Request::METHOD_POST); $response = $client->send(); $request = $client->getLastResponse(); $result = $response->getBody(); $resultJson = json_decode($response->getBody()); //Here we add the date last updated so that we don't have to send it if not needed, saving load time. if (!empty($resultJson->feed) && $resultJson->feed == "success") { $me->addItem(array('dateLastUpdated' => $item->pastlink->dateLastUpdated, 'pastlinklinkHash' => $item->pastlink->hash, 'futurelinkHash' => $item->futurelink->hash)); } $items[$item->pastlink->text] = $result; } catch (Exception $e) { } } } return $items; } }