From 9c9c4fbba201477d878e21e9fd325a45d9d5d09c Mon Sep 17 00:00:00 2001 From: mauriziovitale84 Date: Fri, 20 May 2016 17:22:58 +0100 Subject: [PATCH] Fixed translation service --- demo-shell-ng2/app/app.component.ts | 5 ++- demo-shell-ng2/i18n/it.json | 40 ++++++++++++++++++- .../AlfrescoTranslationLoader.service.ts | 1 - .../AlfrescoTranslationService.service.ts | 16 +++++--- .../src/components/upload-button.component.ts | 2 +- 5 files changed, 53 insertions(+), 11 deletions(-) diff --git a/demo-shell-ng2/app/app.component.ts b/demo-shell-ng2/app/app.component.ts index ff256315ad..02c5f246e1 100644 --- a/demo-shell-ng2/app/app.component.ts +++ b/demo-shell-ng2/app/app.component.ts @@ -44,7 +44,7 @@ declare var document: any; {path: '/search', name: 'Search', component: AlfrescoSearchComponent} ]) export class AppComponent { - translate: TranslateService; + translate: AlfrescoTranslationService; searchForm: ControlGroup; constructor(private _fb: FormBuilder, @@ -58,7 +58,8 @@ export class AppComponent { searchTerm: ['', Validators.compose([Validators.required, Validators.minLength(3)])] }); - translate.translationInit(''); + this.translate = translate; + this.translate.translationInit(); } isActive(instruction: any[]): boolean { diff --git a/demo-shell-ng2/i18n/it.json b/demo-shell-ng2/i18n/it.json index d09ecc96e0..2eaebcd5b9 100644 --- a/demo-shell-ng2/i18n/it.json +++ b/demo-shell-ng2/i18n/it.json @@ -1,3 +1,41 @@ { "title" : "Benvenuto" -} \ No newline at end of file + + "DOCUMENT_LIST": { + "COLUMNS": { + "DISPLAY_NAME": "Mostra name", + "CREATED_BY": "Creato da", + "CREATED_ON": "Creato il" + }, + "ACTIONS": { + "FOLDER": { + "SYSTEM_1": "Azione 1 di sistema sulla cartella", + "CUSTOM": "Azione personalizzata su cartella" + }, + "DOCUMENT": { + "DOWNLOAD": "Download", + "SYSTEM_2": "System document action 2", + "CUSTOM": "Custom action" + } + } + }, + + "DATATABLE": { + "COLUMNS": { + "DISPLAY_NAME": "Display name", + "CREATED_BY": "Created by", + "CREATED_ON": "Created on" + }, + "ACTIONS": { + "FOLDER": { + "SYSTEM_1": "System folder action 1", + "CUSTOM": "Custom folder action" + }, + "DOCUMENT": { + "DOWNLOAD": "Download", + "SYSTEM_2": "System document action 2", + "CUSTOM": "Custom action" + } + } + } +} diff --git a/ng2-components/ng2-alfresco-core/services/AlfrescoTranslationLoader.service.ts b/ng2-components/ng2-alfresco-core/services/AlfrescoTranslationLoader.service.ts index 8d0ff62821..d3520bfeb9 100644 --- a/ng2-components/ng2-alfresco-core/services/AlfrescoTranslationLoader.service.ts +++ b/ng2-components/ng2-alfresco-core/services/AlfrescoTranslationLoader.service.ts @@ -50,7 +50,6 @@ export class AlfrescoTranslationLoader implements TranslateLoader { multiLanguage += JSON.stringify(translate); }); observer.next(JSON.parse(multiLanguage.replace(/}{/g, ','))); - observer.next(multiLanguage); observer.complete(); }); }); diff --git a/ng2-components/ng2-alfresco-core/services/AlfrescoTranslationService.service.ts b/ng2-components/ng2-alfresco-core/services/AlfrescoTranslationService.service.ts index 5dba5e562d..78023c8a31 100644 --- a/ng2-components/ng2-alfresco-core/services/AlfrescoTranslationService.service.ts +++ b/ng2-components/ng2-alfresco-core/services/AlfrescoTranslationService.service.ts @@ -22,20 +22,24 @@ import { AlfrescoTranslationLoader } from './AlfrescoTranslationLoader.service'; @Injectable() export class AlfrescoTranslationService extends TranslateService { - + userLang: string; currentLoader: AlfrescoTranslationLoader; constructor(http: Http, currentLoader: AlfrescoTranslationLoader, @Optional() missingTranslationHandler: MissingTranslationHandler) { super(http, currentLoader, missingTranslationHandler); } - translationInit(path: string): void { + translationInit(name: string = ''): void { let userLang = navigator.language.split('-')[0]; // use navigator lang if available userLang = /(fr|en)/gi.test(userLang) ? userLang : 'en'; + this.userLang = userLang; + this.setDefaultLang(this.userLang); + this.addComponent(name); + this.use(this.userLang); + } - this.setDefaultLang(userLang); - this.currentLoader.addComponentList(path); - this.getTranslation(userLang); - this.use(userLang); + addComponent(name: string) { + this.currentLoader.addComponentList(name); + this.getTranslation(this.userLang); } } diff --git a/ng2-components/ng2-alfresco-upload/src/components/upload-button.component.ts b/ng2-components/ng2-alfresco-upload/src/components/upload-button.component.ts index 2b78646d27..3210e69774 100644 --- a/ng2-components/ng2-alfresco-upload/src/components/upload-button.component.ts +++ b/ng2-components/ng2-alfresco-upload/src/components/upload-button.component.ts @@ -106,7 +106,7 @@ export class UploadButtonComponent { } }); - translate.translationInit('node_modules/ng2-alfresco-upload'); + translate.addComponent('node_modules/ng2-alfresco-upload'); } /**