예제 #1
0
    $accessToken = session('access_token');
    if (!session()->has('twitter_account')) {
        $connection = new Abraham\TwitterOAuth\TwitterOAuth(env('TWITTER_CONSUMER_KEY'), env('TWITTER_CONSUMER_SECRET'), $accessToken['oauth_token'], $accessToken['oauth_token_secret']);
        $twitterAccount = $connection->get("account/verify_credentials");
        session(['twitter_account' => $twitterAccount]);
    }
    $twitterAccount = session('twitter_account');
    return view('twitter.index', compact('twitterAccount'));
});
Route::post('/twitter-status', ['as' => 'twitter_status_update', function (Illuminate\Http\Request $request) {
    $connection = new Abraham\TwitterOAuth\TwitterOAuth(env('TWITTER_CONSUMER_KEY'), env('TWITTER_CONSUMER_SECRET'), session('access_token.oauth_token'), session('access_token.oauth_token_secret'));
    $statues = $connection->post("statuses/update", ["status" => $request->input('status')]);
    if ($connection->getLastHttpCode() == 200) {
        return redirect('twitter-profile')->with("message", "Update status success!")->with("success", true);
    }
    return redirect('twitter-profile')->with('message', 'Error: can"t update status')->with('success', false);
}]);
Route::post('/twitter-send-message', ['as' => 'twitter_send_message', function (Illuminate\Http\Request $request) {
    $connection = new Abraham\TwitterOAuth\TwitterOAuth(env('TWITTER_CONSUMER_KEY'), env('TWITTER_CONSUMER_SECRET'), session('access_token.oauth_token'), session('access_token.oauth_token_secret'));
    $fields = ['message' => $request->input('message'), 'to' => $request->input('to')];
    $request = $connection->post("direct_messages/new", $fields);
    if ($connection->getLastHttpCode() == 200) {
        return redirect('twitter-profile')->with('message', "Message sent to @" . $request->input('to'))->with('success', true);
    }
    return redirect('twitter-profile')->with('message', "Send message failed!")->with('success', false);
}]);
Route::get('/logout', ['as' => 'logout_path', function (Illuminate\Http\Request $request) {
    session()->forget('twitter_account');
    session()->forget('access_token');
    return redirect(route('login_path'));
}]);