diff options
-rw-r--r-- | core/Controller/LoginController.php | 5 | ||||
-rw-r--r-- | core/js/login.js | 6 |
2 files changed, 10 insertions, 1 deletions
diff --git a/core/Controller/LoginController.php b/core/Controller/LoginController.php index 64899304d78..5697430051f 100644 --- a/core/Controller/LoginController.php +++ b/core/Controller/LoginController.php @@ -130,7 +130,10 @@ class LoginController extends Controller { } $this->userSession->logout(); - $response = new RedirectResponse($this->urlGenerator->linkToRouteAbsolute('core.login.showLoginForm')); + $response = new RedirectResponse($this->urlGenerator->linkToRouteAbsolute( + 'core.login.showLoginForm', + ['clear' => true] // this param the the code in login.js may be removed when the "Clear-Site-Data" is working in the browsers + )); $response->addHeader('Clear-Site-Data', '"cache", "storage", "executionContexts"'); return $response; } diff --git a/core/js/login.js b/core/js/login.js index 64be29bfec6..8ef76c5717b 100644 --- a/core/js/login.js +++ b/core/js/login.js @@ -41,4 +41,10 @@ $(document).ready(function() { $('form[name=login]').submit(OC.Login.onLogin); $('#remember_login').click(OC.Login.rememberLogin); + + var clearParamRegex = new RegExp('clear=1'); + if (clearParamRegex.test(window.location.href)) { + window.localStorage.clear(); + window.sessionStorage.clear(); + } }); |