Skip to content

Commit

Permalink
fix lazy-loaded translations in admin module
Browse files Browse the repository at this point in the history
  • Loading branch information
ruddell committed May 21, 2018
1 parent aaa5c49 commit 535350d
Show file tree
Hide file tree
Showing 3 changed files with 17 additions and 5 deletions.
5 changes: 2 additions & 3 deletions package.json
Original file line number Diff line number Diff line change
Expand Up @@ -21,14 +21,13 @@
"font-awesome": "4.7.0",
"jquery": "3.3.1",
"moment": "2.21.0",
"ng-jhipster": "0.4.2",
"ng-jhipster": "0.4.5",
"ngx-cookie": "2.0.1",
"ngx-infinite-scroll": "0.5.1",
"ngx-webstorage": "2.0.1",
"reflect-metadata": "0.1.12",
"rxjs": "5.5.6",
"swagger-ui": "2.2.10",
"tether": "1.4.3",
"tslib": "1.9.0",
"zone.js": "0.8.20"
},
Expand All @@ -41,7 +40,7 @@
"angular-router-loader": "0.8.2",
"angular2-template-loader": "0.6.2",
"browser-sync": "2.23.6",
"browser-sync-webpack-plugin": "2.0.1",
"browser-sync-webpack-plugin": "2.2.2",
"cache-loader": "1.2.2",
"codelyzer": "4.2.1",
"copy-webpack-plugin": "4.5.1",
Expand Down
9 changes: 7 additions & 2 deletions src/main/webapp/app/admin/admin.module.ts
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
import { NgModule, CUSTOM_ELEMENTS_SCHEMA } from '@angular/core';
import { RouterModule } from '@angular/router';

import { JhiLanguageService } from 'ng-jhipster';
import { JhiLanguageHelper } from 'app/core';
import { JhipsterSharedModule } from 'app/shared';
/* jhipster-needle-add-admin-module-import - JHipster will add admin modules imports here */

Expand Down Expand Up @@ -67,4 +68,8 @@ import {
],
schemas: [CUSTOM_ELEMENTS_SCHEMA]
})
export class JhipsterAdminModule {}
export class JhipsterAdminModule {
constructor(private languageService: JhiLanguageService, private languageHelper: JhiLanguageHelper) {
this.languageHelper.language.subscribe((languageKey: string) => this.languageService.changeLanguage(languageKey));
}
}
8 changes: 8 additions & 0 deletions src/main/webapp/app/core/language/language.helper.ts
Original file line number Diff line number Diff line change
Expand Up @@ -2,12 +2,14 @@ import { Injectable, RendererFactory2, Renderer2 } from '@angular/core';
import { Title } from '@angular/platform-browser';
import { Router, ActivatedRouteSnapshot } from '@angular/router';
import { TranslateService, LangChangeEvent } from '@ngx-translate/core';
import { BehaviorSubject, Observable } from 'rxjs';

import { LANGUAGES } from 'app/core/language/language.constants';

@Injectable()
export class JhiLanguageHelper {
renderer: Renderer2 = null;
private _language: BehaviorSubject<string>;

constructor(
private translateService: TranslateService,
Expand All @@ -16,6 +18,7 @@ export class JhiLanguageHelper {
private titleService: Title,
private router: Router
) {
this._language = new BehaviorSubject<string>(this.translateService.currentLang);
this.renderer = rootRenderer.createRenderer(document.querySelector('html'), null);
this.init();
}
Expand All @@ -24,6 +27,10 @@ export class JhiLanguageHelper {
return Promise.resolve(LANGUAGES);
}

get language(): Observable<string> {
return this._language.asObservable();
}

/**
* Update the window title using params in the following
* order:
Expand All @@ -43,6 +50,7 @@ export class JhiLanguageHelper {

private init() {
this.translateService.onLangChange.subscribe((event: LangChangeEvent) => {
this._language.next(this.translateService.currentLang);
this.renderer.setAttribute(document.querySelector('html'), 'lang', this.translateService.currentLang);
this.updateTitle();
});
Expand Down

0 comments on commit 535350d

Please sign in to comment.