BlogHandler.coffee 793 B

123456789101112131415161718192021222324
  1. request = require "request"
  2. settings = require "settings-sharelatex"
  3. _ = require("underscore")
  4. logger = require "logger-sharelatex"
  5. module.exports = BlogHandler =
  6. getLatestAnnouncements: (callback)->
  7. blogUrl = "#{settings.apis.blog.url}/blog/latestannouncements.json"
  8. opts =
  9. url:blogUrl
  10. json:true
  11. timeout:500
  12. request.get opts, (err, res, announcements)->
  13. if err?
  14. return callback err
  15. if res.statusCode != 200
  16. return callback("blog announcement returned non 200")
  17. logger.log announcementsLength: announcements?.length, "announcements returned"
  18. announcements = _.map announcements, (announcement)->
  19. announcement.url = "/blog#{announcement.url}"
  20. announcement.date = new Date(announcement.date)
  21. return announcement
  22. callback(err, announcements)