/** * Logout a profile. * * @return Response */ protected function logout() { if ($this->app['clientlogin.session']->isLoggedIn($this->request)) { $this->getTokenManager()->removeToken(TokenManager::TOKEN_ACCESS); $this->app['clientlogin.feedback']->set('message', 'Logout was successful.'); } $cookiePaths = $this->getConfig()->getCookiePaths(); $response = new SuccessRedirectResponse('/'); CookieManager::clearResponseCookies($response, $cookiePaths); return $response; }
/** * Logout route. * * @param \Silex\Application $app * @param Request $request * * @return RedirectResponse */ public function authenticationLogout(Application $app, Request $request) { if (!$app['clientlogin.provider.manager']->getProviderName()) { $request->query->set('provider', 'Generic'); } $response = $this->getFinalResponse($app, 'logout'); if ($response instanceof SuccessRedirectResponse) { $response->setTargetUrl($this->getRedirectUrl($app)); } CookieManager::clearResponseCookies($response, $app['clientlogin.config']->getCookiePaths()); return $response; }