/** * (non-PHPdoc) * @see \API\src\Endpoints\Endpoints::get() */ public function get() { $session = new Session(Config::getConfig('SpotifyAppId'), Config::getConfig('SpotifySecret')); $callback = 'http://api.soundeavor.com/User/Auth/Login/Spotify/index.php'; $session->setRedirectUri($callback); $url = $session->getAuthorizeUrl(); if (!isset($_GET['code'])) { header('Location: ' . $url); } $code = $_GET['code']; $api = new SpotifyWebAPI(); $session->requestToken($code); $api->setAccessToken($session->getAccessToken()); $me = $api->me(); $body['spotifyName_text'] = $me->display_name; $body['spotifyAccessToken_text'] = $session->getAccessToken(); $body['spotifyUserId_text'] = $me->id; $this->request->response->body = $body; $this->request->response->code = r_success; }
/** * @param Request $request * @return \Illuminate\Http\RedirectResponse|\Illuminate\Routing\Redirector */ public function getUserInfo(Request $request) { $session = new SpotifyWebAPI\Session(Config::get('spotify.client_id'), Config::get('spotify.client_secret'), Config::get('spotify.redirect_url.getUserInfo')); $api = new SpotifyWebAPI\SpotifyWebAPI(); if (isset($_GET['code'])) { try { $session->requestAccessToken($_GET['code']); $api->setAccessToken($session->getAccessToken()); } catch (Exception $e) { Log::error($e->getMessage()); return redirect('/spotify/step_one'); } } else { header('Location: ' . $session->getAuthorizeUrl(array('scope' => array('playlist-modify-private', 'playlist-modify-public', 'playlist-read-private')))); die; } $me = $api->me(); $playlists = $api->getUserPlaylists($me->id); foreach ($playlists->items as $playlist) { $data[] = array('id' => $playlist->id, 'owner_id' => $playlist->owner->id, 'name' => $playlist->name); } return View::make('spotify.step_three')->with('data', $data); }