示例#1
0
 public function saveFeed($feed, $action = '')
 {
     $networkSocialMedia = new SJB_FacebookSocialMedia();
     $accessToken = $networkSocialMedia->getAccessToken();
     $user = $networkSocialMedia->getAccountInfo($feed->getSID());
     $accountName = !empty($user['account_name']) ? $user['account_name'] : '';
     $feed->addProperty(array('id' => 'access_token', 'type' => 'text', 'value' => $accessToken, 'is_system' => true));
     $feed->addProperty(array('id' => 'account_name', 'type' => 'text', 'value' => $accountName, 'is_system' => true));
     $feed->addProperty(array('id' => 'expiration_date', 'type' => 'date', 'value' => SJB_I18N::getInstance()->getDate(date('Y-m-d', time() + 60 * 24 * 60 * 60)), 'is_system' => true));
     parent::saveFeed($feed);
 }
示例#2
0
 public function getAccessToken($feedSID = null, $action = null, &$errors)
 {
     SJB_Session::setValue('twitterFeed', serialize($_REQUEST));
     if ($feedSID != null) {
         $feedInfo = SJB_SocialMedia::getFeedInfoByNetworkIdAndSID(self::NETWORK_ID, $feedSID);
     }
     if ($action != 'grant') {
         $feedInfo['consumerKey'] = SJB_Request::getVar('consumerKey');
         $feedInfo['consumerSecret'] = SJB_Request::getVar('consumerSecret');
         $feedInfo['account_id'] = SJB_Request::getVar('account_id');
     }
     $config = array('callbackUrl' => self::getCallBackUrl($feedSID, $action, SJB_Request::getVar('submit')), 'siteUrl' => 'http://twitter.com/oauth', 'consumerKey' => $feedInfo['consumerKey'], 'consumerSecret' => $feedInfo['consumerSecret'], 'requestTokenUrl' => 'https://api.twitter.com/oauth/request_token', 'userAuthorizationUrl' => 'https://api.twitter.com/oauth/authorize', 'accessTokenUrl' => 'https://api.twitter.com/oauth/access_token');
     $consumer = new Zend_Oauth_Consumer($config);
     $client = new Zend_Http_Client();
     $client->setConfig(array('sslcert' => 'cacert.pem'));
     $consumer->setHttpClient($client);
     $sessionTwitterRequestToken = SJB_Session::getValue('TWITTER_REQUEST_TOKEN');
     if (SJB_Request::getVar('process_token', false) && !is_null($sessionTwitterRequestToken)) {
         $accessToken = $consumer->getAccessToken($_GET, unserialize($sessionTwitterRequestToken));
         $feedInfo['access_token'] = $accessToken;
         $twitter = self::getZendServiceTwitter($feedInfo, $accessToken);
         $response = $twitter->account->accountVerifyCredentials()->toValue();
         if (!empty($response->screen_name) && strtolower($response->screen_name) == strtolower($feedInfo['account_id'])) {
             return $accessToken;
         } else {
             $errors[] = 'Twitter account verification failed';
             return false;
         }
     } else {
         if ($requestToken = $consumer->getRequestToken()) {
             SJB_Session::setValue('TWITTER_REQUEST_TOKEN', serialize($requestToken));
             $consumer->redirect();
         } else {
             $errors[] = 'Could not retrieve a valid Token. Please check "Consumer Key" and "Consumer secret"';
             return false;
         }
     }
 }
示例#3
0
 /**
  * @param SJB_LinkedInSocial $feed
  * @param string $action
  */
 public function saveFeed($feed, $action = '')
 {
     parent::saveFeed($feed);
     $linkedInSocialMedia = new SJB_LinkedInSocialMedia();
     $linkedInSocialMedia->saveAccountInfo($feed->getSID(), $feed->getPropertyValue('account_id'));
 }
 /**
  * @param int $feedSID
  */
 public function run_manually_check($feedSID)
 {
     $feed = SJB_SocialMedia::getFeedInfoByNetworkIdAndSID($this->networkID, $feedSID);
     $feedManager = SJB_SocialMediaPostingsPublisher::getPublisher($feed, $this->networkID);
     $listingSIDs = $feedManager->getListingsSIDsToPostByFeed();
     $postedToday = $feedManager->getPostedTodayByFeed();
     $this->tp->assign('foundListingsToPost', count($listingSIDs));
     $this->tp->assign('postedToday', $postedToday);
     $this->displayResult($feedManager);
 }
示例#5
0
 /**
  * @param SJB_TemplateProcessor $tp
  * @param $networkSocialMedia
  * @param array $errors
  * @param array $feedInfo
  * @param string $network
  * @param int $sid
  */
 private function checkToken(SJB_TemplateProcessor $tp, $networkSocialMedia, array &$errors, array $feedInfo, $network, $sid)
 {
     if ($networkSocialMedia->approveAccount()) {
         if (empty($feedInfo)) {
             $feedInfo = SJB_SocialMedia::getFeedInfoByNetworkIdAndSID($network, $sid);
         }
         if (!empty($feedInfo)) {
             if (SJB_SocialMedia::isFeedExpired($feedInfo)) {
                 $errors[] = 'TOKEN_EXPIRED';
                 $tp->assign('expired', true);
             } else {
                 $errors[] = 'APPROVE_ACCOUNT';
                 $tp->assign('approveAccount', true);
             }
         }
     }
 }
示例#6
0
 public function saveFeed($feed, $action = '')
 {
     parent::saveFeed($feed);
 }