Skip to content
Snippets Groups Projects
Commit ae124c9c authored by Benoît Harrault's avatar Benoît Harrault
Browse files

Add "logout" button

parent d40f91de
Branches
No related tags found
1 merge request!3Resolve "Add "logout" button"
......@@ -4,17 +4,57 @@ session_start();
require '../vendor/autoload.php';
require '../config.php';
if (isset($_GET['logout'])) {
$_SESSION['accessToken'] = '';
$_SESSION['refreshToken'] = '';
}
$accessToken = '';
if (isset($_SESSION['accessToken'])) {
$accessToken = $_SESSION['accessToken'];
}
$refreshToken = '';
if (isset($_SESSION['refreshToken'])) {
$refreshToken = $_SESSION['refreshToken'];
}
if (!$accessToken) {
header('Location: auth.php');
die();
}
$api = new SpotifyWebAPI\SpotifyWebAPI();
$api->setAccessToken($accessToken);
$session = new SpotifyWebAPI\Session(
$CLIENT_ID,
$CLIENT_SECRET
);
// Use previously requested tokens fetched from session
if ($accessToken) {
$session->setAccessToken($accessToken);
$session->setRefreshToken($refreshToken);
} else {
// Or request a new access token
$session->refreshAccessToken($refreshToken);
}
$scopes = $session->getScope();
$options = [
'scope' => [
'playlist-read-private',
'playlist-modify-private',
'user-read-private',
],
'auto_refresh' => true,
];
$api = new SpotifyWebAPI\SpotifyWebAPI($options, $session);
// Save new tokens, they might have been updated
$_SESSION['accessToken'] = $session->getAccessToken();
$_SESSION['refreshToken'] = $session->getRefreshToken();
// ################################################################
$user = $api->me();
......
......@@ -21,6 +21,9 @@
<h5 class="card-title"><?php echo $templateData['user']->display_name; ?></h5>
<a href="<?php echo $templateData['user']->external_urls->spotify; ?>" class="btn btn-primary">View profile</a>
</div>
<div class="card-footer">
<a href="?logout" class="card-link">disconnect</a>
</div>
</div>
</div>
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment