overleaf/services/web/app/coffee/Features/Errors/ErrorController.coffee

24 lines
758 B
CoffeeScript
Raw Normal View History

Errors = require "./Errors"
logger = require "logger-sharelatex"
2014-06-20 12:17:24 -04:00
module.exports = ErrorController =
notFound: (req, res)->
res.status(404)
2014-06-20 12:17:24 -04:00
res.render 'general/404',
title: "page_not_found"
serverError: (req, res)->
res.status(500)
res.render 'general/500',
title: "Server Error"
handleError: (error, req, res, next) ->
if error?.code is 'EBADCSRFTOKEN'
logger.log err: error,url:req.url, method:req.method, user:req?.sesson?.user, "invalid csrf"
res.sendStatus(403)
return
logger.error err: error, url:req.url, method:req.method, user:req?.sesson?.user, "error passed to top level next middlewear"
if error instanceof Errors.NotFoundError
ErrorController.notFound req, res
else
ErrorController.serverError req, res