aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--core/Controller/LoginController.php5
-rw-r--r--core/js/login.js6
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();
+ }
});