Просмотр исходного кода

put express locals on webRouter, this prevents problem with accessing sessions in locals, they should also only be used on web routes not api routes

Henry Oswald 11 лет назад
Родитель
Сommit
3ab57f6830
1 измененных файлов с 18 добавлено и 18 удалено
  1. 18 18
      services/web/app/coffee/infrastructure/ExpressLocals.coffee

+ 18 - 18
services/web/app/coffee/infrastructure/ExpressLocals.coffee

@@ -40,37 +40,37 @@ for path in [
 	
 	
 
 
 module.exports = (app, webRouter, apiRouter)->
 module.exports = (app, webRouter, apiRouter)->
-	app.use (req, res, next)->
+	webRouter.use (req, res, next)->
 		res.locals.session = req.session
 		res.locals.session = req.session
 		next()
 		next()
 
 
-	app.use (req, res, next)-> 
+	webRouter.use (req, res, next)-> 
 		res.locals.jsPath = jsPath
 		res.locals.jsPath = jsPath
 		next()
 		next()
 
 
-	app.use (req, res, next)-> 
+	webRouter.use (req, res, next)-> 
 		res.locals.settings = Settings
 		res.locals.settings = Settings
 		next()
 		next()
 
 
-	app.use (req, res, next)->
+	webRouter.use (req, res, next)->
 		res.locals.translate = (key, vars = {}) ->
 		res.locals.translate = (key, vars = {}) ->
 			vars.appName = Settings.appName
 			vars.appName = Settings.appName
 			req.i18n.translate(key, vars)
 			req.i18n.translate(key, vars)
 		res.locals.currentUrl = req.originalUrl
 		res.locals.currentUrl = req.originalUrl
 		next()
 		next()
 
 
-	app.use (req, res, next)->
+	webRouter.use (req, res, next)->
 		res.locals.getSiteHost = ->
 		res.locals.getSiteHost = ->
 			Settings.siteUrl.substring(Settings.siteUrl.indexOf("//")+2)
 			Settings.siteUrl.substring(Settings.siteUrl.indexOf("//")+2)
 		next()
 		next()
 
 
-	app.use (req, res, next)->
+	webRouter.use (req, res, next)->
 		res.locals.formatProjectPublicAccessLevel = (privilegeLevel)->
 		res.locals.formatProjectPublicAccessLevel = (privilegeLevel)->
 			formatedPrivileges = private:"Private", readOnly:"Public: Read Only", readAndWrite:"Public: Read and Write"
 			formatedPrivileges = private:"Private", readOnly:"Public: Read Only", readAndWrite:"Public: Read and Write"
 			return formatedPrivileges[privilegeLevel] || "Private"
 			return formatedPrivileges[privilegeLevel] || "Private"
 		next()
 		next()
 
 
-	app.use (req, res, next)-> 
+	webRouter.use (req, res, next)-> 
 		res.locals.buildReferalUrl = (referal_medium) ->
 		res.locals.buildReferalUrl = (referal_medium) ->
 			url = Settings.siteUrl
 			url = Settings.siteUrl
 			if req.session? and req.session.user? and req.session.user.referal_id?
 			if req.session? and req.session.user? and req.session.user.referal_id?
@@ -98,12 +98,12 @@ module.exports = (app, webRouter, apiRouter)->
 		res.locals.csrfToken = req?.csrfToken()
 		res.locals.csrfToken = req?.csrfToken()
 		next()
 		next()
 
 
-	app.use (req, res, next) ->
+	webRouter.use (req, res, next) ->
 		res.locals.getReqQueryParam = (field)->
 		res.locals.getReqQueryParam = (field)->
 			return req.query?[field]
 			return req.query?[field]
 		next()
 		next()
 
 
-	app.use (req, res, next)-> 
+	webRouter.use (req, res, next)-> 
 		res.locals.fingerprint = (path) ->
 		res.locals.fingerprint = (path) ->
 			if fingerprints[path]?
 			if fingerprints[path]?
 				return fingerprints[path]
 				return fingerprints[path]
@@ -112,16 +112,16 @@ module.exports = (app, webRouter, apiRouter)->
 				return ""
 				return ""
 		next()
 		next()
 
 
-	app.use (req, res, next)-> 
+	webRouter.use (req, res, next)-> 
 		res.locals.formatPrice = SubscriptionFormatters.formatPrice
 		res.locals.formatPrice = SubscriptionFormatters.formatPrice
 		next()
 		next()
 
 
-	app.use (req, res, next)->
+	webRouter.use (req, res, next)->
 		res.locals.externalAuthenticationSystemUsed = ->
 		res.locals.externalAuthenticationSystemUsed = ->
 			Settings.ldap?
 			Settings.ldap?
 		next()
 		next()
 
 
-	app.use (req, res, next)->
+	webRouter.use (req, res, next)->
 		if req.session.user?
 		if req.session.user?
 			res.locals.user =
 			res.locals.user =
 				email: req.session.user.email
 				email: req.session.user.email
@@ -139,34 +139,34 @@ module.exports = (app, webRouter, apiRouter)->
 		res.locals.sentryPublicDSN = Settings.sentry?.publicDSN
 		res.locals.sentryPublicDSN = Settings.sentry?.publicDSN
 		next()
 		next()
 
 
-	app.use (req, res, next) ->
+	webRouter.use (req, res, next) ->
 		if req.query? and req.query.scribtex_path?
 		if req.query? and req.query.scribtex_path?
 			res.locals.lookingForScribtex = true
 			res.locals.lookingForScribtex = true
 			res.locals.scribtexPath = req.query.scribtex_path
 			res.locals.scribtexPath = req.query.scribtex_path
 		next()
 		next()
 
 
-	app.use (req, res, next) ->
+	webRouter.use (req, res, next) ->
 		res.locals.nav = Settings.nav
 		res.locals.nav = Settings.nav
 		res.locals.templates = Settings.templateLinks
 		res.locals.templates = Settings.templateLinks
 		next()
 		next()
 		
 		
-	app.use (req, res, next) ->
+	webRouter.use (req, res, next) ->
 		SystemMessageManager.getMessages (error, messages = []) ->
 		SystemMessageManager.getMessages (error, messages = []) ->
 			res.locals.systemMessages = messages
 			res.locals.systemMessages = messages
 			next()
 			next()
 
 
-	app.use (req, res, next)->
+	webRouter.use (req, res, next)->
 		res.locals.query = req.query
 		res.locals.query = req.query
 		next()
 		next()
 
 
-	app.use (req, res, next)->
+	webRouter.use (req, res, next)->
 		subdomain = _.find Settings.i18n.subdomainLang, (subdomain)->
 		subdomain = _.find Settings.i18n.subdomainLang, (subdomain)->
 			subdomain.lngCode == req.showUserOtherLng and !subdomain.hide
 			subdomain.lngCode == req.showUserOtherLng and !subdomain.hide
 		res.locals.recomendSubdomain = subdomain
 		res.locals.recomendSubdomain = subdomain
 		res.locals.currentLngCode = req.lng
 		res.locals.currentLngCode = req.lng
 		next()
 		next()
 
 
-	app.use (req, res, next) ->
+	webRouter.use (req, res, next) ->
 		if Settings.reloadModuleViewsOnEachRequest
 		if Settings.reloadModuleViewsOnEachRequest
 			Modules.loadViewIncludes()
 			Modules.loadViewIncludes()
 		res.locals.moduleIncludes = Modules.moduleIncludes
 		res.locals.moduleIncludes = Modules.moduleIncludes