diff --git a/dev/user-frontend-ionic/projects/shared/src/lib/guided-tour/guided-tour.service.ts b/dev/user-frontend-ionic/projects/shared/src/lib/guided-tour/guided-tour.service.ts index b510b5e5..2bfedb7e 100644 --- a/dev/user-frontend-ionic/projects/shared/src/lib/guided-tour/guided-tour.service.ts +++ b/dev/user-frontend-ionic/projects/shared/src/lib/guided-tour/guided-tour.service.ts @@ -43,7 +43,7 @@ import { Capacitor } from '@capacitor/core'; import { OrientationType, ScreenOrientation } from '@capawesome/capacitor-screen-orientation'; import { TranslateService } from '@ngx-translate/core'; import { ShepherdService } from 'angular-shepherd'; -import { Observable } from 'rxjs'; +import { Observable, zip } from 'rxjs'; import { filter, switchMap, take } from 'rxjs/operators'; import { userIsAuthenticated$ } from '../auth/authenticated-user.repository'; import { MenuItem } from '../navigation/menu.model'; @@ -90,13 +90,14 @@ export class GuidedTourService { return; } - this.isOnline$ - .pipe( + zip( + this.isOnline$.pipe( filter(isOnline => isOnline), take(1), - switchMap(() => userIsAuthenticated$.pipe(take(1))) - ) - .subscribe(userIsAuthenticated => { + switchMap(() => userIsAuthenticated$.pipe(take(1))), + ), + this.translateService.get('GUIDED_TOUR') // on ne le récupère pas, mais permet d'attendre que la traduction soit chargée, sinon .instant() ne fonctionne pas à chaque fois + ).subscribe(([userIsAuthenticated]) => { if ( !isLoggedTourViewed() && !isAnonymousTourViewed() &&