30 lines
1.1 KiB
JavaScript
30 lines
1.1 KiB
JavaScript
var fs = require('fs');
|
|
var settings = require('./settings.js');
|
|
var path = require('path');
|
|
|
|
module.exports = {
|
|
/**
|
|
* Returns template locale
|
|
* @param {String} template - Template name
|
|
* @param {String} countryCode - Language code
|
|
* @param {Object} cb - Callback
|
|
*/
|
|
load: function(template, countryCode, cb) {
|
|
var localeFile = path.join(__dirname, 'template', `${template}`, 'locale', `${countryCode}.json`);
|
|
var defaultLocaleFile = path.join(__dirname, 'template', `${template}`, 'locale', `${settings.app().defaultLanguage}.json`);
|
|
|
|
fs.stat(localeFile, (error, stats) => {
|
|
if (error) {
|
|
fs.stat(defaultLocaleFile, (error, stats) => {
|
|
if (error)
|
|
return cb({status: 'REJECT', data: {message: 'Translation not found for template ' + template + '.'}});
|
|
|
|
cb({status: 'ACCEPT', data: {locale: require(defaultLocaleFile)}});
|
|
});
|
|
} else {
|
|
cb({status: 'ACCEPT', data: {locale: require(localeFile)}});
|
|
}
|
|
});
|
|
}
|
|
};
|