Esempio n. 1
0
 public function __construct($params = array())
 {
     parent::__construct($params);
     $config = array('appId' => Core_Model_Lib_Facebook::getAppId(), 'secret' => Core_Model_Lib_Facebook::getSecretKey());
     $this->_facebook = new Facebook($config);
     if (!empty($params['social_datas'])) {
         $this->_facebook->setAccessToken(unserialize($params['social_datas']));
     }
     if ($this->isValid()) {
         $this->loadData();
     }
     return $this;
 }
Esempio n. 2
0
 protected function _parseFBAgenda($username)
 {
     $app_id = Core_Model_Lib_Facebook::getAppId();
     $app_secret = Core_Model_Lib_Facebook::getSecretKey();
     $url = 'https://graph.facebook.com/oauth/access_token';
     $url .= '?grant_type=client_credentials';
     $url .= "&client_id={$app_id}";
     $url .= "&client_secret={$app_secret}";
     $access_token = str_replace('access_token=', '', file_get_contents($url));
     $url = "https://graph.facebook.com/{$username}/events?access_token={$access_token}";
     $response = @file_get_contents($url);
     if (!$response) {
         return $this;
     }
     $events = Zend_Json::decode($response);
     if (!empty($events) && !empty($events['data'])) {
         foreach ($events['data'] as $event) {
             $event_datas = @file_get_contents("https://graph.facebook.com/{$event['id']}?access_token={$access_token}");
             if (!$event_datas) {
                 continue;
             }
             $description = '';
             if (!$event_datas) {
                 continue;
             }
             $event_datas = Zend_Json::decode($event_datas);
             $updated_at = date_create($event_datas['updated_time'])->format('Y-m-d H:i:s');
             if (!empty($event_datas['venue'])) {
                 $address = $event_datas['venue']['street'] . ', ' . $event_datas['venue']['zip'] . ', ' . $event_datas['venue']['city'];
                 if (!empty($event_datas['venue']['state'])) {
                     $address .= ', ' . $event_datas['venue']['state'];
                 }
                 if (!empty($event_datas['venue']['country'])) {
                     $address .= ', ' . $event_datas['venue']['country'];
                 }
             }
             $start_at = null;
             if (!empty($event['start_time'])) {
                 $start_at = new Zend_Date($event['start_time'], Zend_Date::ISO_8601);
                 $start_at = $start_at->toString('y-MM-dd HH:mm:ss');
             }
             //                isset($event['start_time']) ? $start_at = strtotime($event['start_time']) : $start_at = strtotime(date("Y-m-d H:i:s", time()));
             $this->_list[] = array("name" => $event['name'], "start_at" => $start_at, "end_at" => date_create(isset($event['end_time']) ? $event['end_time'] : "")->format('Y-m-d H:i:s'), "description" => !empty($event_datas['description']) ? $event_datas['description'] : null, "location" => $address, "rsvp" => '', "picture" => 'https://graph.facebook.com/' . $event['id'] . '/picture?type=large', "created_at" => null, "updated_at" => $updated_at);
             //                }
         }
     }
     return $this;
 }
 public function checkfbAction()
 {
     if ($datas = $this->getRequest()->getPost()) {
         try {
             $username = "";
             if (empty($datas['url'])) {
                 throw new Exception();
             }
             if (stripos($datas['url'], 'facebook.com') !== false and stripos($datas['url'], 'http') === false) {
                 $datas['url'] = 'https://' . $datas['url'];
             }
             if (Zend_Uri::check($datas['url'])) {
                 $uri = Zend_Uri_Http::fromString($datas['url']);
                 $username = ltrim($uri->getPath(), '/');
                 $username = current(explode('/', $username));
             } else {
                 $username = $datas['url'];
             }
             $app_id = Core_Model_Lib_Facebook::getAppId();
             $app_secret = Core_Model_Lib_Facebook::getSecretKey();
             $url = 'https://graph.facebook.com/oauth/access_token';
             $url .= '?grant_type=client_credentials';
             $url .= "&client_id={$app_id}";
             $url .= "&client_secret={$app_secret}";
             $access_token = str_replace('access_token=', '', @file_get_contents($url));
             $url = "https://graph.facebook.com/{$username}/events?access_token={$access_token}";
             $response = @file_get_contents($url);
             if (empty($response)) {
                 throw new Exception('Invalid username');
             }
             $html = array('success' => 1, 'fb_username' => $username);
         } catch (Exception $e) {
             $html = array('message' => $e->getMessage(), 'message_button' => 1, 'message_loader' => 1);
         }
         $this->getLayout()->setHtml(Zend_Json::encode($html));
     }
 }
Esempio n. 4
0
 private function __getAccessToken()
 {
     $app_id = Core_Model_Lib_Facebook::getAppId();
     $app_secret = Core_Model_Lib_Facebook::getSecretKey();
     if ($this->_page == 1) {
         $url = 'https://graph.facebook.com/oauth/access_token';
         $url .= '?grant_type=client_credentials';
         $url .= "&client_id={$app_id}";
         $url .= "&client_secret={$app_secret}";
     } else {
         $url = $this->_next_url;
     }
     return str_replace('access_token=', '', file_get_contents($url));
 }