File: /home/nexper/public_html/crm/custom/include/social/twitter/twitter_auth/callback.php
<?php
/**
* @file
* Take the user when they return from Twitter. Get access tokens.
* Verify credentials and redirect to based on response from Twitter.
*/
include('../../../../../config.php');
global $sugar_config;
/* Start session and load lib */
session_start();
require_once('twitteroauth/twitteroauth.php');
include('custom/modules/Connectors/connectors/sources/ext/rest/twitter/config.php');
/* If the oauth_token is old redirect to the connect page. */
if (isset($_REQUEST['oauth_token']) && $_SESSION['oauth_token'] !== $_REQUEST['oauth_token']) {
$_SESSION['oauth_status'] = 'oldtoken';
header('Location: custom/include/social/get_feed_data.php');
}
$settings = array(
'oauth_access_token' => $config['properties']['oauth_access_token'],
'oauth_access_token_secret' => $config['properties']['oauth_access_token_secret'],
'consumer_key' => $config['properties']['consumer_key'],
'consumer_secret' => $config['properties']['consumer_secret'],
'call_back_url' => $config['properties']['OAUTH_CALLBACK'],
);
/* Create TwitteroAuth object with app key/secret and token key/secret from default phase */
$connection = new TwitterOAuth($settings['consumer_key'],$settings['consumer_secret'], $_SESSION['oauth_token'], $_SESSION['oauth_token_secret']);
/* Request access tokens from twitter */
$access_token = $connection->getAccessToken($_REQUEST['oauth_verifier']);
/* Save the access tokens. Normally these would be saved in a database for future use. */
$_SESSION['access_token'] = $access_token;
/* Remove no longer needed request tokens */
unset($_SESSION['oauth_token']);
unset($_SESSION['oauth_token_secret']);
/* If HTTP response is 200 continue otherwise send to connect page to retry */
if (200 == $connection->http_code) {
/* The user has been verified and the access tokens can be saved for future use */
$_SESSION['status'] = 'verified';
header('Location: ' .$sugar_config['site_url'] . '/index.php');
} else {
/* Save HTTP status for error dialog on connnect page.*/
header('Location: ' .$sugar_config['site_url'] . '/index.php');
}