HomeController.coffee 1.1 KB

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