Skip to content

Commit 7063363

Browse files
committed
Fix logout
closes #33
1 parent b56a966 commit 7063363

1 file changed

Lines changed: 10 additions & 11 deletions

File tree

lib/GaletteOAuth2/Controllers/LoginController.php

Lines changed: 10 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -182,21 +182,20 @@ public function logout(Request $request, Response $response): Response
182182
Debug::logRequest('logout()', $request);
183183
UserHelper::logout($this->container);
184184

185-
//FIXME: for both isLoggedIn and user_id, we can rely on login object stored in session
186-
$this->session->user_id = null;
187-
$this->session->isLoggedIn = 'no';
188-
$client_id = $this->session->request_args['client_id'];
189-
$this->session->request_args = [];
185+
unset(
186+
$this->session->user_id,
187+
$this->session->isLoggedIn,
188+
$this->session->request_args
189+
);
190+
session_destroy();
190191

191-
//By default : client_id.redirect_logout else '/'
192-
$redirect_logout = '/';
193-
if ($client_id) {
192+
$redirect_logout = $this->routeparser->urlFor('slash');
193+
if ($client_id = $this->session->request_args['client_id'] ?? null) {
194194
$redirect_logout = $this->config->get("{$client_id}.redirect_logout", $redirect_logout);
195+
Debug::log("logout():url_logout for client:'{$client_id}' = '{$redirect_logout}'");
195196
}
196197

197-
Debug::log("logout():url_logout for client:'{$client_id}' = '{$redirect_logout}'");
198-
199-
//Add an url redirection in config.yml : $client_id: redirect_logout:"https:\\xxx");
198+
//Add an url redirection in config.yml: $client_id: redirect_logout:"https:\\xxx");
200199
return $response->withHeader('Location', $redirect_logout)->withStatus(302);
201200
}
202201

0 commit comments

Comments
 (0)