function getTwCredentials($twitter_user_id_hash = '') { if (session_id() == "") { session_start(); } $script_path = __FUNCTION__; $_SESSION['tw_tok'] = $twitter_user_id_hash; $model = new TwextraModel(); $result_t = $model->get_tw_access_token($twitter_user_id_hash); logger($script_path . " result_t: ", $result_t); logger($script_path . " twitter_user_id_hash: ", $twitter_user_id_hash); logger($script_path . " result_t array: ", $result_t); $_SESSION['tw_access_token'] = $result_t; $_SESSION['user'] = $result_t['screen_name']; // $_SESSION['tid'] = $result_t['tid']; //check result_t, if access token is null or wrong, set result_t to error. //if((trim($result_t['oauth_token'])=='') || ($result_t['oauth_token']==null)){ if (empty($result_t) || empty($result_t['oauth_token'])) { $result_t = 'error'; } return $result_t; }
function tw_page2_cookie($prefix, $message, $access_token_curl = '', $access_token_secret_curl = '') { //configuration parameters: $config_params = Config::getConfigParams(); $hostname = $config_params['hostname']; $consumer_key = $config_params['consumer_key']; $consumer_secret = $config_params['consumer_secret']; $oauth_callback = $config_params['oauth_callback']; $docroot = $config_params['docroot']; $debug = $config_params['debug']; $cookie_name = $config_params['cookie_name']; $err_message = ''; $script_path = __FUNCTION__; $_SESSION['prefix'] = $prefix; $_SESSION['message'] = $message; $web_api_call = false; if (isset($_COOKIE[$cookie_name])) { $tw_user_id_hash = $_COOKIE[$cookie_name]; $model = new TwextraModel(); $access_token = $model->get_tw_access_token($tw_user_id_hash); // $oauth_token = $access_token['oauth_token']; $oauth_token_secret = $access_token['oauth_token_secret']; } else { if ($access_token_curl != '' && $access_token_secret_curl != '') { $oauth_token = $access_token_curl; $oauth_token_secret = $access_token_secret_curl; $web_api_call = true; } else { $_SESSION['user'] = ''; } } logger($script_path . " access_token_curl: ", $access_token_curl); logger($script_path . " access_token_secret_curl: ", $access_token_secret_curl); logger($script_path . " before model get1: "); logger($script_path . " after model get1: "); if (isset($access_token)) { logger($script_path . " access_token: ", $access_token); if ($access_token == 'error') { $err_message = "Error! Wrong credentials. Please try again."; if ($web_api_call) { $err_message = array('error' => $err_message); print_r(json_encode($err_message)); exit; } else { $err_message = urlencode($err_message); header("Location: {$hostname}/index.php?error={$err_message}"); exit; } } } logger($script_path . " before twitter access2: "); $connection = new TwitterOAuth($consumer_key, $consumer_secret, $oauth_token, $oauth_token_secret); logger($script_path . " after twitter access2: "); logger($script_path . " http_code before post: connection: ", $connection); $_SESSION['status'] = 'verified'; $prefix = $_SESSION['prefix']; $message_id = $_SESSION['message_id']; $status_url = "{$hostname}/{$message_id}"; logger($script_path . " status_url: ", $status_url); $status_twextra = $prefix . $status_url; $status_twextra = substr($status_twextra, 0, 140); //make sure max tweet is upto 140 characters $parameters = array('status' => "{$status_twextra}"); //...............test show message timeline.............................. //$parameters_timeline = array('count'=>5); //$status_timeline = $connection->get('statuses/home_timeline', $parameters_timeline); // logger($script_path." home_timeline: ", $status_timeline); // logger($script_path." profile image url: ", $status_timeline[0]->user->profile_image_url); //.................test ends....................... logger($script_path . " before twitter post3: "); $status_obj = $connection->post('statuses/update', $parameters); //<<<<<<<POST logger($script_path . " status_object: ", $status_obj); $user_id = $status_obj->user->id; $_SESSION['user'] = $status_obj->user->screen_name; // logger($script_path . " user_id: ", $user_id); logger($script_path . " url string: ", $message_id); $model = new TwextraModel(); $error2 = $model->update_message_user_id($message_id, $user_id); //<<<<<<< logger($script_path . " profile image url: ", $status_obj->user->profile_image_url); $_SESSION['profile_image_url'] = $status_obj->user->profile_image_url; //.................... if (!empty($user_id)) { $error3 = $model->update_user_info($user_id, $status_obj); ///<<<<<<< logger($script_path . " after update_user_info: ", $error3); } else { $err_message = "Error! Please try again."; if ($web_api_call) { //print_r ( array ('error' => $err_message ) ); $err_message = array('error' => $err_message); print_r(json_encode($err_message)); exit; } else { $err_message = urlencode($err_message); header("Location: {$hostname}/index.php?error={$err_message}"); exit; } } //.................... if (!isset($status_obj->error) && !($error2 == 'error')) { $status_obj->success = 'Your message was posted successfully.'; } else { $err_message = urlencode("Error! Please try again."); } logger($script_path . " after twitter post3:_obj: ", $status_obj); if ($web_api_call) { print_r(json_encode($status_obj)); exit; } $_SESSION['update_tw'] = 1; if (empty($err_message)) { header("Location: {$status_url}"); exit; } else { header("Location: {$hostname}/index.php?error={$err_message}"); // exit; } }