cms-on-sails icon indicating copy to clipboard operation
cms-on-sails copied to clipboard

supporting i18n

Open flipflopsimsommer opened this issue 10 years ago • 3 comments

supporting multi language is something important for cms.

/config/i18n.js

module.exports.i18n = {
  // Which locales are supported?
  locales: ['en', 'de', 'it'],
  // Where are your locale translations located?
  localesDirectory: '/config/locales'
};

in your policie:

var locale = undefined;
if(typeof req.session.user == 'object' && typeof req.session.user.locale !== 'undefined'){
    locale = req.session.user.locale;
    sails.log.info('choos language in profile ' + locale);
}
return ok();

then you just use res.__('test')

enable autoupdate in lang.json file.

flipflopsimsommer avatar Jun 02 '14 09:06 flipflopsimsommer

If balderdashy/sails accepts the pull, i think i could work this in

one problem i see is:

if the visitor to the website is not logged in as a user, the locale will never be set.

hayksaakian avatar Jun 02 '14 21:06 hayksaakian

i hope the accept it soon, it's only 1 line and by default nothing chances. as i understand and combined with my code it would work something linke this

  • it uses the defaultLocale in your i18n.js config file
  • if sent it will use the http header: Accept-Language.
  • if set it uses the session locale.

okey just realised i should past the defaultLocale as well i will make a new pull request sails

flipflopsimsommer avatar Jun 03 '14 09:06 flipflopsimsommer

updated the url to the new pull request

flipflopsimsommer avatar Jun 03 '14 11:06 flipflopsimsommer