@ -25,7 +25,6 @@ var db = require('./database');
var file = require ( './file' ) ;
var file = require ( './file' ) ;
var emailer = require ( './emailer' ) ;
var emailer = require ( './emailer' ) ;
var meta = require ( './meta' ) ;
var meta = require ( './meta' ) ;
var languages = require ( './languages' ) ;
var logger = require ( './logger' ) ;
var logger = require ( './logger' ) ;
var plugins = require ( './plugins' ) ;
var plugins = require ( './plugins' ) ;
var flags = require ( './flags' ) ;
var flags = require ( './flags' ) ;
@ -194,12 +193,13 @@ function setupExpressApp(app, callback) {
app . use ( middleware . addHeaders ) ;
app . use ( middleware . addHeaders ) ;
app . use ( middleware . processRender ) ;
app . use ( middleware . processRender ) ;
auth . initialize ( app , middleware ) ;
auth . initialize ( app , middleware ) ;
app . use ( middleware . autoLocale ) ; // must be added after auth middlewares are added
var toobusy = require ( 'toobusy-js' ) ;
var toobusy = require ( 'toobusy-js' ) ;
toobusy . maxLag ( meta . config . eventLoopLagThreshold ) ;
toobusy . maxLag ( meta . config . eventLoopLagThreshold ) ;
toobusy . interval ( meta . config . eventLoopInterval ) ;
toobusy . interval ( meta . config . eventLoopInterval ) ;
setupAutoLocale( app , callback) ;
callback( ) ;
}
}
function setupFavicon ( app ) {
function setupFavicon ( app ) {
@ -233,35 +233,6 @@ function setupCookie() {
return cookie ;
return cookie ;
}
}
function setupAutoLocale ( app , callback ) {
languages . listCodes ( function ( err , codes ) {
if ( err ) {
return callback ( err ) ;
}
var defaultLang = meta . config . defaultLang || 'en-GB' ;
var langs = [ defaultLang ] . concat ( codes ) . filter ( function ( el , i , arr ) {
return arr . indexOf ( el ) === i ;
} ) ;
app . use ( function ( req , res , next ) {
if ( parseInt ( req . uid , 10 ) > 0 || ! meta . config . autoDetectLang ) {
return next ( ) ;
}
var lang = req . acceptsLanguages ( langs ) ;
if ( ! lang ) {
return next ( ) ;
}
req . query . lang = lang ;
next ( ) ;
} ) ;
callback ( ) ;
} ) ;
}
function listen ( callback ) {
function listen ( callback ) {
callback = callback || function ( ) { } ;
callback = callback || function ( ) { } ;
var port = nconf . get ( 'port' ) ;
var port = nconf . get ( 'port' ) ;