HomeController.coffee 1002 B

123456789101112131415161718192021222324252627282930313233343536
  1. logger = require('logger-sharelatex')
  2. _ = require('underscore')
  3. Path = require "path"
  4. fs = require "fs"
  5. homepageExists = fs.existsSync Path.resolve(__dirname + "/../../../views/external/home.jade")
  6. module.exports = HomeController =
  7. index : (req,res)->
  8. if req.session.user
  9. if req.query.scribtex_path?
  10. res.redirect "/project?scribtex_path=#{req.query.scribtex_path}"
  11. else
  12. res.redirect '/project'
  13. else
  14. if homepageExists
  15. res.render 'external/home',
  16. title: 'ShareLaTeX.com'
  17. else
  18. res.redirect "/login"
  19. externalPage: (page, title) ->
  20. return (req, res, next = (error) ->) ->
  21. path = Path.resolve(__dirname + "/../../../views/external/#{page}.jade")
  22. fs.exists path, (exists) -> # No error in this callback - old method in Node.js!
  23. if exists
  24. res.render "external/#{page}.jade",
  25. title: title
  26. else
  27. HomeController.notFound(req, res, next)
  28. notFound: (req, res)->
  29. res.statusCode = 404
  30. res.render 'general/404',
  31. title: "Page Not Found"