Esempio n. 1
0
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;
    }
}
Esempio n. 2
0
 $status_twextra = substr($status_twextra, 0, 140);
 //make sure max tweet is upto 140 characters
 $parameters = array('status' => "{$status_twextra}");
 logger($script_path . "  before twitter post5: ");
 if (!isset($_SESSION['signin_with_twitter'])) {
     $status_obj = $connection->post('statuses/update', $parameters);
     //<<<<<<<<<<
 } else {
     $status_obj = $connection->get('statuses/user_timeline', array());
     //<<<<<<<<<<
     $status_obj = $status_obj[0];
 }
 logger($script_path . "  status object: ", $status_obj);
 //store user profile info into database (page2.php is accessed for new users only):
 if (!empty($user_id) && !empty($status_obj->user->id)) {
     $error3 = $model->update_user_info($user_id, $status_obj);
     //<<<<<<<<
     logger($script_path . "  after update_user_info: ", $error3);
 } else {
     //$err_message=urlencode("Error! Please try again.");
     //header("Location: $hostname/index.php?error=$err_message");
     //exit();
 }
 $_SESSION['profile_image_url'] = $status_obj->user->profile_image_url;
 $_SESSION['user'] = $status_obj->user->screen_name;
 logger($script_path . "  after twitter post5: ");
 //$_SESSION['user']=$access_token['screen_name']; //
 if ($error3 != 'error' && !isset($_SESSION['signin_with_twitter'])) {
     $_SESSION['update_tw'] = 1;
     header("Location: {$status_url}");
     exit;