Norio Suzuki 9 лет назад
Родитель
Сommit
4c4daa672a
1 измененных файлов с 17 добавлено и 0 удалено
  1. 17 0
      lib/crowi/express-init.js

+ 17 - 0
lib/crowi/express-init.js

@@ -12,10 +12,27 @@ module.exports = function(crowi, app) {
     , flash          = require('connect-flash')
     , cons           = require('consolidate')
     , swig           = require('swig')
+    , i18next        = require('i18next')
+    , i18nFsBackend  = require('i18next-node-fs-backend')
+    , i18nSprintf    = require('i18next-sprintf-postprocessor')
+    , i18nMiddleware = require('i18next-express-middleware')
     , env            = crowi.node_env
     , middleware     = require('../util/middlewares')
     ;
 
+  i18next
+    .use(i18nMiddleware.LanguageDetector)
+    .use(i18nFsBackend)
+    .use(i18nSprintf)
+    .init({
+      fallbackLng: 'en',
+      backend: {
+        loadPath: 'locales/{{lng}}/translation.json'
+      },
+      overloadTranslationOptionHandler: i18nSprintf.overloadTranslationOptionHandler
+    });
+  app.use(i18nMiddleware.handle(i18next));
+
   app.use(function(req, res, next) {
     var now = new Date()
       , baseUrl