コード例 #1
0
 /**
  * Post a message on facebook
  * @param Chronicle $chronicle the chronicle to post on facebook
  * @return boolean return TRUE if post was succesfull, FALSE otherwise
  */
 private function postOnFacebook(Chronicle $chronicle, $facebookSvc)
 {
     try {
         Trace::addItem("postOnFacebook");
         $globalContext = new \Sb\Context\Model\Context();
         // Set facebook posts variables using a ChronicleAdapter and a PushedChronicle
         $chronicleAdapter = new ChronicleAdapter($chronicle);
         $pushedChronicle = $chronicleAdapter->getAsChronicleViewModelLight();
         $facebookMessage = $pushedChronicle->getTitle();
         $facebookTitle = sprintf(__("%s vient de poster une chronique sur %s", "s1b"), $globalContext->getConnectedUser()->getFirstName(), Constants::SITENAME);
         $facebookCaption = $pushedChronicle->getShortenText();
         $facebookLink = $pushedChronicle->getDetailLink();
         $facebookPicture = $pushedChronicle->getImage();
         Trace::addItem("posting {$facebookMessage} with title {$facebookTitle} and caption {$facebookCaption}, link {$facebookLink} and picture {$facebookPicture}");
         $post = $facebookSvc->post($facebookMessage, $facebookTitle, $facebookCaption, $facebookLink, $facebookPicture);
         return $post;
     } catch (\Exception $e) {
         Trace::addItem(sprintf("Une erreur s'est produite dans \"%s->%s\", TRACE : %s\"", get_class(), __FUNCTION__, $e->getTraceAsString()));
         return false;
     }
 }