function __construct($message)
 {
     Exception::__construct($message);
     OAuthRequestLogger::addNote('OAuthException2: ' . $message);
     if ($debug) {
         echo message;
     }
 }
示例#2
0
 /**
  * Overrule this method when you want to display a nice page when
  * the authorization is finished.  This function does not know if the authorization was
  * succesfull, you need to check the token in the database.
  * 
  * @param boolean authorized	if the current token (oauth_token param) is authorized or not
  * @param int user_id			user for which the token was authorized (or denied)
  * @return string verifier  For 1.0a Compatibility
  */
 public function authorizeFinish($authorized, $user_id)
 {
     OAuthRequestLogger::start($this);
     $token = $this->getParam('oauth_token', true);
     $verifier = null;
     if ($this->session->get('verify_oauth_token') == $token) {
         // Flag the token as authorized, or remove the token when not authorized
         $store = OAuthStore::instance();
         // Fetch the referrer host from the oauth callback parameter
         $referrer_host = '';
         $oauth_callback = false;
         $verify_oauth_callback = $this->session->get('verify_oauth_callback');
         if (!empty($verify_oauth_callback) && $verify_oauth_callback != 'oob') {
             $oauth_callback = $this->session->get('verify_oauth_callback');
             $ps = parse_url($oauth_callback);
             if (isset($ps['host'])) {
                 $referrer_host = $ps['host'];
             }
         }
         if ($authorized) {
             OAuthRequestLogger::addNote('Authorized token "' . $token . '" for user ' . $user_id . ' with referrer "' . $referrer_host . '"');
             // 1.0a Compatibility : create a verifier code
             $verifier = $store->authorizeConsumerRequestToken($token, $user_id, $referrer_host);
         } else {
             OAuthRequestLogger::addNote('Authorization rejected for token "' . $token . '" for user ' . $user_id . "\nToken has been deleted");
             $store->deleteConsumerRequestToken($token);
         }
         if (!empty($oauth_callback)) {
             $params = array('oauth_token' => rawurlencode($token));
             // 1.0a Compatibility : if verifier code has been generated, add it to the URL
             if ($verifier) {
                 $params['oauth_verifier'] = $verifier;
             }
             $uri = preg_replace('/\\s/', '%20', $oauth_callback);
             if (!empty($this->allowed_uri_schemes)) {
                 if (!in_array(substr($uri, 0, strpos($uri, '://')), $this->allowed_uri_schemes)) {
                     throw new OAuthException2('Illegal protocol in redirect uri ' . $uri);
                 }
             } else {
                 if (!empty($this->disallowed_uri_schemes)) {
                     if (in_array(substr($uri, 0, strpos($uri, '://')), $this->disallowed_uri_schemes)) {
                         throw new OAuthException2('Illegal protocol in redirect uri ' . $uri);
                     }
                 }
             }
             $this->redirect($oauth_callback, $params);
         }
     }
     OAuthRequestLogger::flush();
     return $verifier;
 }
示例#3
0
 /**
  * Overrule this method when you want to display a nice page when
  * the authorization is finished.  This function does not know if the authorization was
  * succesfull, you need to check the token in the database.
  * 
  * @param boolean authorized	if the current token (oauth_token param) is authorized or not
  * @param int user_id			user for which the token was authorized (or denied)
  */
 public function authorizeFinish($authorized, $user_id)
 {
     OAuthRequestLogger::start($this);
     $token = $this->getParam('oauth_token', true);
     if (isset($_SESSION['verify_oauth_token']) && $_SESSION['verify_oauth_token'] == $token) {
         // Flag the token as authorized, or remove the token when not authorized
         $store = OAuthStore::instance();
         // Fetch the referrer host from the oauth callback parameter
         $referrer_host = '';
         $oauth_callback = false;
         if (!empty($_SESSION['verify_oauth_callback'])) {
             $oauth_callback = $_SESSION['verify_oauth_callback'];
             $ps = j_parseUrl($oauth_callback);
             if (isset($ps['host'])) {
                 $referrer_host = $ps['host'];
             }
         }
         if ($authorized) {
             OAuthRequestLogger::addNote('Authorized token "' . $token . '" for user ' . $user_id . ' with referrer "' . $referrer_host . '"');
             $store->authorizeConsumerRequestToken($token, $user_id, $referrer_host);
         } else {
             OAuthRequestLogger::addNote('Authorization rejected for token "' . $token . '" for user ' . $user_id . "\nToken has been deleted");
             $store->deleteConsumerRequestToken($token);
         }
         if (!empty($oauth_callback)) {
             $this->redirect($oauth_callback, array('oauth_token' => rawurlencode($token)));
         }
     }
     OAuthRequestLogger::flush();
 }
示例#4
0
 function __construct($message)
 {
     Exception::__construct($message);
     OAuthRequestLogger::addNote('OAuthException: ' . $message);
     die("<?xml version=\"1.0\" encoding=\"ISO-8859-1\"?>\n" . '<api_error>' . $message . '</api_error>');
 }
 function __construct($message)
 {
     Exception::__construct($message);
     OAuthRequestLogger::addNote('OAuthException: ' . $message);
 }
示例#6
0
 /**
  * Overrule this method when you want to want to display a nice page when
  * the authorization is finished.  This function does not know if the authorization was
  * succesfull, you need to check the token in the database.
  */
 public function authorizeFinish($authorized, $user_id)
 {
     OAuthRequestLogger::start($this);
     $token = $this->getParam('oauth_token', true);
     if (isset($_SESSION['verify_oauth_token']) && $_SESSION['verify_oauth_token'] == $token) {
         // Flag the token as authorized, or remove the token when not authorized
         $store = OAuthStore::instance();
         if ($authorized) {
             OAuthRequestLogger::addNote('Authorized token "' . $token . '" for user ' . $user_id);
             $store->authorizeConsumerRequestToken($token, $user_id);
         } else {
             OAuthRequestLogger::addNote('Authorization rejected for token "' . $token . '" for user ' . $user_id . "\nToken has been deleted");
             $store->deleteConsumerRequestToken($token);
         }
         if (!empty($_SESSION['verify_oauth_callback'])) {
             $this->redirect($_SESSION['verify_oauth_callback'], array('oauth_token' => rawurlencode($token)));
         }
     }
     OAuthRequestLogger::finish();
 }