MOBILE-3189 lang: Emit onLangChange when custom strings loaded
parent
4c03c0174a
commit
ec4bcd7085
|
@ -1316,7 +1316,7 @@
|
||||||
"core.back": "Back",
|
"core.back": "Back",
|
||||||
"core.block.blocks": "Blocks",
|
"core.block.blocks": "Blocks",
|
||||||
"core.cancel": "Cancel",
|
"core.cancel": "Cancel",
|
||||||
"core.cannotconnect": "Cannot connect: Verify that you have correctly typed the URL and that your site uses Moodle 2.4 or later.",
|
"core.cannotconnect": "Cannot connect: Verify that you have correctly typed the URL and that your site uses Moodle 3.1 or later.",
|
||||||
"core.cannotdownloadfiles": "File downloading is disabled. Please contact your site administrator.",
|
"core.cannotdownloadfiles": "File downloading is disabled. Please contact your site administrator.",
|
||||||
"core.captureaudio": "Record audio",
|
"core.captureaudio": "Record audio",
|
||||||
"core.capturedimage": "Taken picture.",
|
"core.capturedimage": "Taken picture.",
|
||||||
|
|
|
@ -315,6 +315,8 @@ export class CoreLangProvider {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
let currentLangChanged = false;
|
||||||
|
|
||||||
const list: string[] = strings.split(/(?:\r\n|\r|\n)/);
|
const list: string[] = strings.split(/(?:\r\n|\r|\n)/);
|
||||||
list.forEach((entry: string) => {
|
list.forEach((entry: string) => {
|
||||||
const values: string[] = entry.split('|');
|
const values: string[] = entry.split('|');
|
||||||
|
@ -327,6 +329,10 @@ export class CoreLangProvider {
|
||||||
|
|
||||||
lang = values[2].replace(/_/g, '-'); // Use the app format instead of Moodle format.
|
lang = values[2].replace(/_/g, '-'); // Use the app format instead of Moodle format.
|
||||||
|
|
||||||
|
if (lang == this.currentLanguage) {
|
||||||
|
currentLangChanged = true;
|
||||||
|
}
|
||||||
|
|
||||||
if (!this.customStrings[lang]) {
|
if (!this.customStrings[lang]) {
|
||||||
this.customStrings[lang] = {};
|
this.customStrings[lang] = {};
|
||||||
}
|
}
|
||||||
|
@ -340,6 +346,14 @@ export class CoreLangProvider {
|
||||||
});
|
});
|
||||||
|
|
||||||
this.customStringsRaw = strings;
|
this.customStringsRaw = strings;
|
||||||
|
|
||||||
|
if (currentLangChanged) {
|
||||||
|
// Some lang strings have changed, emit an event to update the pipes.
|
||||||
|
this.translate.onLangChange.emit({
|
||||||
|
lang: this.currentLanguage,
|
||||||
|
translations: this.translate.translations[this.currentLanguage]
|
||||||
|
});
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
Loading…
Reference in New Issue