Notifications UI update and delete endpoint

This commit is contained in:
advplyr 2022-09-23 18:10:03 -05:00
parent b08ad8785e
commit 37a3fdb606
6 changed files with 95 additions and 21 deletions

View file

@ -18,17 +18,8 @@ class NotificationController {
res.sendStatus(200)
}
async createEvent(req, res) {
const success = this.db.notificationSettings.addNewEvent(req.body)
if (success) {
await this.db.updateEntity('settings', this.db.notificationSettings)
}
res.sendStatus(200)
}
async updateEvent(req, res) {
const success = this.db.notificationSettings.updateEvent(req.body)
async createNotification(req, res) {
const success = this.db.notificationSettings.createNotification(req.body)
if (success) {
await this.db.updateEntity('settings', this.db.notificationSettings)
@ -40,10 +31,40 @@ class NotificationController {
res.json(this.notificationManager.getData())
}
async deleteNotification(req, res) {
if (this.db.notificationSettings.removeNotification(req.notification.id)) {
await this.db.updateEntity('settings', this.db.notificationSettings)
}
res.sendStatus(200)
}
async updateNotification(req, res) {
const success = this.db.notificationSettings.updateNotification(req.body)
if (success) {
await this.db.updateEntity('settings', this.db.notificationSettings)
}
res.sendStatus(200)
}
sendNotificationTest(req, res) {
this.notificationManager.onTest()
res.sendStatus(200)
}
middleware(req, res, next) {
if (!req.user.isAdminOrUp) {
return res.sendStatus(404)
}
if (req.params.id) {
const notification = this.db.notificationSettings.getNotification(req.params.id)
if (!notification) {
return res.sendStatus(404)
}
req.notification = notification
}
next()
}
}