HomeController.coffee 976 B

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