*/ Route::get('/', function () { return view('home'); }); Route::post('fetch', function () { require_once 'app/Classes/OpenGraph.php'; $graph = OpenGraph::fetch(Input::get('url')); foreach ($graph as $key => $value) { $output[$key] = $value; } return $output; }); Route::post('sendtweet', function () { $file = file_get_contents(Input::get('image')); $file = base64_encode($file); $uploaded_media = Twitter::uploadMedia(['media_data' => $file]); return Twitter::postTweet(['status' => Input::get('text'), 'media_ids' => $uploaded_media->media_id_string]); }); Route::get('twitter/login', ['as' => 'twitter.login', function () { // your SIGN IN WITH TWITTER button should point to this route $sign_in_twitter = true; $force_login = false; // Make sure we make this request w/o tokens, overwrite the default values in case of login. Twitter::reconfig(['token' => '', 'secret' => '']); $token = Twitter::getRequestToken(route('twitter.callback')); if (isset($token['oauth_token_secret'])) { $url = Twitter::getAuthorizeURL($token, $sign_in_twitter, $force_login); Session::put('oauth_state', 'start'); Session::put('oauth_request_token', $token['oauth_token']); Session::put('oauth_request_token_secret', $token['oauth_token_secret']); return Redirect::to($url);
/** * Post article to twitter with cover image * * @param $article * @return void */ private function tweet($article) { Tweet::reconfig(['token' => Auth::user()->twitter_token->token, 'secret' => Auth::user()->twitter_token->secret]); $media = Tweet::uploadMedia(['media' => file_get_contents($article->cover()->url)]); Tweet::postTweet(['status' => $article->title . ' ' . url($article->slug), 'media_ids' => $media->media_id_string]); }