function getResourceBundle(lang, namespace = 'translation') { if (i18n.hasResourceBundle(lang, namespace)) { return i18n.getResourceBundle(lang, namespace); } else if (lang.includes("-")) { const newlang = lang.split("-")[0]; console.log(`no resource bundle found for ${lang} trying with ${newlang}`) return getResourceBundle(newlang, namespace); } console.log("no resource bundle found for " + lang) return {} }
ipcMain.on('get-initial-translations', (event, arg) => { const loc = currentLocale; console.log('get-initial-translations: ' + loc); i18n.loadLanguages(loc, (err, t) => { const initial = {}; initial[loc] = { 'translation': getResourceBundle(loc, 'translation') } //const keys = Object.keys(initial[loc]['translation']) //console.log('get-initial-translations: ' + loc + " keys: " + keys.length); event.returnValue = initial; }); });
test('BackendConnector basic load', async () => { // before i18next.init() const connector = i18next.services.backendConnector connector.backend = new Http(i18next.services, { loadPath: 'http://localhost:5001/locales/{{lng}}/{{ns}}' }) const app = await server() // test await (new Promise((resolve, reject) => { connector.load(['en'], ['test'], (err) => err ? reject(err) : resolve()) })) assertEquals(connector.store.getResourceBundle('en', 'test'), { key: 'passing' }) // after await app.close() })
sap.ui.define([], () => { 'use strict'; return { statusText(sStatus) { const oResourceBundle = this.getView().getModel('i18n').getResourceBundle(); switch (sStatus) { case 'A': return oResourceBundle.getText('invoiceStatusA'); case 'B': return oResourceBundle.getText('invoiceStatusB'); case 'C': return oResourceBundle.getText('invoiceStatusC'); default: return sStatus; } }, }; });
i18n.on('languageChanged', (lng) => { //console.log('languageChanged: ' + lng) createMenu(); if (mainWindow) { mainWindow.webContents.on('did-finish-load', () => { mainWindow.webContents.send('language-changed', { language: lng, namespace: 'translation', resource: getResourceBundle(lng, 'translation') }); }); } });
languages.forEach(lng => { namespaces.forEach(ns => { utils.setPath(resources, [lng, ns], i18next.getResourceBundle(lng, ns)) }) })
describe(`BackendConnector basic load using ${typeof XMLHttpRequest === 'function' ? 'XMLHttpRequest' : 'fetch'}`, () => { let connector before((done) => { connector = i18next.services.backendConnector connector.backend = new Http(i18next.services, { loadPath: 'http://localhost:5001/locales/{{lng}}/{{ns}}' }) server(done) }) describe('#load', () => { it('should load data', (done) => { connector.load(['en'], ['test'], (err) => { expect(err).not.to.be.ok() expect(connector.store.getResourceBundle('en', 'test')).to.eql({ key: 'passing' }) done() }) }) }) })
return this.getOwnerComponent().getModel("i18n").getResourceBundle(); }, let sMessage = this.getResourceBundle().getText("BaseController.ExcluirItemSelecionado"); let sTitle = this.getResourceBundle().getText("BaseController.Excluso")
return this.getOwnerComponent().getModel("i18n").getResourceBundle(); },
return this.getOwnerComponent().getModel("i18n").getResourceBundle(); },
return this.getOwnerComponent().getModel("i18n").getResourceBundle(); },
return this.getOwnerComponent().getModel("i18n").getResourceBundle(); },
return this.getOwnerComponent().getModel("i18n").getResourceBundle(); },
return this.getOwnerComponent().getModel("i18n").getResourceBundle(); },
return this.getOwnerComponent().getModel("i18n").getResourceBundle(); },