HomeController.coffee 1.0 KB

12345678910111213141516171819202122232425262728293031323334353637
  1. logger = require('logger-sharelatex')
  2. _ = require('underscore')
  3. User = require('./UserController')
  4. Quotes = require('../models/Quote').Quote
  5. Path = require "path"
  6. fs = require "fs"
  7. homepageExists = fs.existsSync Path.resolve(__dirname + "/../../views/external/home.jade")
  8. module.exports = HomeController =
  9. index : (req,res)->
  10. if req.session.user
  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. if homepageExists
  17. res.render 'external/home',
  18. title: 'ShareLaTeX.com'
  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. HomeController.notFound(req, res, next)
  30. notFound: (req, res)->
  31. res.statusCode = 404
  32. res.render 'general/404',
  33. title: "Page Not Found"