server.coffee 1.0 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344
  1. logger = require 'logger-sharelatex'
  2. logger.initialize("chat-sharelatex")
  3. metrics = require("metrics-sharelatex")
  4. metrics.initialize("chat")
  5. Path = require("path")
  6. express = require("express")
  7. app = express()
  8. server = require("http").createServer(app)
  9. Router = require "./router"
  10. metrics.mongodb.monitor(Path.resolve(__dirname + "/../../node_modules/mongojs/node_modules/mongodb"), logger)
  11. app.use express.bodyParser()
  12. app.use metrics.http.monitor(logger)
  13. Router.route(app)
  14. if (app.get 'env') == 'development'
  15. console.log "Development Enviroment"
  16. app.use express.errorHandler({ dumpExceptions: true, showStack: true })
  17. if (app.get 'env') == 'production'
  18. console.log "Production Enviroment"
  19. app.use express.logger()
  20. app.use express.errorHandler()
  21. mountPoint = "/chat"
  22. app.use (req, res, next) ->
  23. if req.url.slice(0, mountPoint.length) == mountPoint
  24. req.url = req.url.slice(mountPoint.length)
  25. next()
  26. else
  27. res.send(404)
  28. app.use(express.static(__dirname + "/../../public/build"))
  29. module.exports = {
  30. server: server
  31. app: app
  32. }