From df14427d604ed254908c9192f5789e2ba924660d Mon Sep 17 00:00:00 2001 From: Peter Bastiani Date: Wed, 12 Mar 2025 15:14:58 +0100 Subject: [PATCH] Fix RVO redirect URL for locale (without loosing queryparms) --- .../src/fm/effects/app-common.effects.ts | 26 +++++++++---------- 1 file changed, 13 insertions(+), 13 deletions(-) diff --git a/projects/common/src/fm/effects/app-common.effects.ts b/projects/common/src/fm/effects/app-common.effects.ts index b849f87..992b026 100644 --- a/projects/common/src/fm/effects/app-common.effects.ts +++ b/projects/common/src/fm/effects/app-common.effects.ts @@ -1,18 +1,18 @@ -import { Injectable, Inject, LOCALE_ID } from '@angular/core'; +import { Inject, Injectable, LOCALE_ID } from '@angular/core'; import { Router } from '@angular/router'; -import { OAuthService,UserInfo } from 'angular-oauth2-oidc'; +import { Actions, createEffect, ofType } from '@ngrx/effects'; import { Store } from '@ngrx/store'; -import { Actions,ofType,createEffect } from '@ngrx/effects'; -import { of,from,zip } from 'rxjs'; -import { withLatestFrom,mergeMap,switchMap,map,catchError,first} from 'rxjs/operators'; +import { OAuthService, UserInfo } from 'angular-oauth2-oidc'; +import { from, of, zip } from 'rxjs'; +import { catchError, first, map, mergeMap, switchMap, withLatestFrom } from 'rxjs/operators'; import * as appCommonActions from '../actions/app-common.actions'; -import * as appCommonReducers from '../reducers/app-common.reducer'; -import { ItemService } from '../services/item.service'; -import { FolderService } from '../services/folder.service'; -import { UserService } from '../services/user.service'; import { IItemTypes } from '../models/item.types'; import { IListItem } from '../models/list.item'; -import {StateSerializerService} from '../services/state-serializer.service'; +import * as appCommonReducers from '../reducers/app-common.reducer'; +import { FolderService } from '../services/folder.service'; +import { ItemService } from '../services/item.service'; +import { StateSerializerService } from '../services/state-serializer.service'; +import { UserService } from '../services/user.service'; @Injectable() export class AppCommonEffects { @@ -63,9 +63,9 @@ export class AppCommonEffects { ofType(appCommonActions.SWITCHLANGUAGE), switchMap((action) => { const a = action as appCommonActions.SwitchLanguage; - if (location.pathname.includes(`/${this.locale}/`)) { - const newPath = location.pathname.replace(`/${this.locale}/`, `/${a.locale}/`); - location.replace(newPath); + if (this.router$.url.includes(`/${this.locale}/`)) { + const newUrl = this.router$.url.replace(`/${this.locale}/`, `/${a.locale}/`); + this.router$.navigateByUrl(newUrl); } return of(undefined); })),{ dispatch:false});