MOBILE-4362 auth: Fix redirect to other site in slow devices
parent
b982a96305
commit
1250779328
|
@ -54,7 +54,7 @@ export class CoreMainMenuAuthGuard implements CanLoad, CanActivate {
|
||||||
|
|
||||||
// Pass redirect data (if any and belongs to same site).
|
// Pass redirect data (if any and belongs to same site).
|
||||||
let redirect = CoreApp.consumeMemoryRedirect();
|
let redirect = CoreApp.consumeMemoryRedirect();
|
||||||
if (!redirect?.timemodified || Date.now() - redirect.timemodified > 20000 || redirect.siteId !== siteId) {
|
if (redirect?.siteId !== siteId) {
|
||||||
redirect = null;
|
redirect = null;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -44,16 +44,10 @@ export class CoreRedirectGuard implements CanLoad, CanActivate {
|
||||||
*/
|
*/
|
||||||
private async guard(): Promise<true | UrlTree> {
|
private async guard(): Promise<true | UrlTree> {
|
||||||
const redirect = CoreApp.consumeMemoryRedirect();
|
const redirect = CoreApp.consumeMemoryRedirect();
|
||||||
|
|
||||||
if (!redirect) {
|
if (!redirect) {
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
// Only accept the redirect if it was stored less than 20 seconds ago.
|
|
||||||
if (!redirect.timemodified || Date.now() - redirect.timemodified > 20000) {
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
|
|
||||||
// Redirect to site path.
|
// Redirect to site path.
|
||||||
if (redirect.siteId && redirect.siteId !== CoreConstants.NO_SITE_ID) {
|
if (redirect.siteId && redirect.siteId !== CoreConstants.NO_SITE_ID) {
|
||||||
const redirectData: CoreRedirectPayload = {
|
const redirectData: CoreRedirectPayload = {
|
||||||
|
|
|
@ -488,6 +488,11 @@ export class CoreAppProvider {
|
||||||
|
|
||||||
this.forgetRedirect();
|
this.forgetRedirect();
|
||||||
|
|
||||||
|
if (redirect && (!redirect.timemodified || Date.now() - redirect.timemodified > 300000)) {
|
||||||
|
// Redirect data is only valid for 5 minutes, discard it.
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
return redirect;
|
return redirect;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue