Example #1
0
 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;
     }
 }