2020-01-13 14:00:40 -05:00
|
|
|
/* eslint-disable
|
|
|
|
camelcase,
|
|
|
|
handle-callback-err,
|
|
|
|
*/
|
|
|
|
// TODO: This file was created by bulk-decaffeinate.
|
|
|
|
// Fix any style issues and re-enable lint.
|
2020-01-13 14:00:33 -05:00
|
|
|
/*
|
|
|
|
* decaffeinate suggestions:
|
|
|
|
* DS102: Remove unnecessary code created because of implicit returns
|
|
|
|
* DS207: Consider shorter variations of null checks
|
|
|
|
* Full docs: https://github.com/decaffeinate/decaffeinate/blob/master/docs/suggestions.md
|
|
|
|
*/
|
|
|
|
const Notifications = require("./Notifications");
|
|
|
|
const logger = require("logger-sharelatex");
|
|
|
|
const metrics = require('metrics-sharelatex');
|
2016-01-14 07:35:16 -05:00
|
|
|
|
2020-01-13 14:00:33 -05:00
|
|
|
module.exports = {
|
2016-01-14 07:35:16 -05:00
|
|
|
|
2020-01-13 14:00:33 -05:00
|
|
|
getUserNotifications(req, res){
|
|
|
|
logger.log({user_id: req.params.user_id}, "getting user unread notifications");
|
|
|
|
metrics.inc("getUserNotifications");
|
|
|
|
return Notifications.getUserNotifications(req.params.user_id, (err, notifications)=> res.json(notifications));
|
|
|
|
},
|
2016-01-14 07:35:16 -05:00
|
|
|
|
2020-01-13 14:00:33 -05:00
|
|
|
addNotification(req, res){
|
|
|
|
logger.log({user_id: req.params.user_id, notification:req.body}, "adding notification");
|
|
|
|
metrics.inc("addNotification");
|
|
|
|
return Notifications.addNotification(req.params.user_id, req.body, function(err, notifications){
|
|
|
|
if (err != null) {
|
|
|
|
return res.send(500);
|
|
|
|
} else {
|
|
|
|
return res.send();
|
|
|
|
}
|
|
|
|
});
|
|
|
|
},
|
2016-01-14 07:35:16 -05:00
|
|
|
|
2020-01-13 14:00:33 -05:00
|
|
|
removeNotificationId(req, res){
|
|
|
|
logger.log({user_id: req.params.user_id, notification_id: req.params.notification_id}, "mark id notification as read");
|
|
|
|
metrics.inc("removeNotificationId");
|
|
|
|
return Notifications.removeNotificationId(req.params.user_id, req.params.notification_id, (err, notifications)=> res.send());
|
|
|
|
},
|
2016-02-05 04:38:32 -05:00
|
|
|
|
2020-01-13 14:00:33 -05:00
|
|
|
removeNotificationKey(req, res){
|
|
|
|
logger.log({user_id: req.params.user_id, notification_key: req.body.key}, "mark key notification as read");
|
|
|
|
metrics.inc("removeNotificationKey");
|
|
|
|
return Notifications.removeNotificationKey(req.params.user_id, req.body.key, (err, notifications)=> res.send());
|
|
|
|
},
|
2016-08-11 05:01:21 -04:00
|
|
|
|
2020-01-13 14:00:33 -05:00
|
|
|
removeNotificationByKeyOnly(req, res){
|
|
|
|
const notification_key = req.params.key;
|
|
|
|
logger.log({notification_key}, "mark notification as read by key only");
|
|
|
|
metrics.inc("removeNotificationKey");
|
|
|
|
return Notifications.removeNotificationByKeyOnly(notification_key, (err, notifications)=> res.send());
|
|
|
|
}
|
|
|
|
};
|