summaryrefslogtreecommitdiff
path: root/src/api/endpoints/notifications/mark_as_read_all.ts
diff options
context:
space:
mode:
authorsyuilo <syuilotan@yahoo.co.jp>2017-10-30 22:12:10 +0900
committersyuilo <syuilotan@yahoo.co.jp>2017-10-30 22:12:10 +0900
commitcaa47cb38cfc3950539c78ca2e70f2c50e815d2c (patch)
treefc1a70e1c1b105ecf8d74ff4d952eff86ded83f6 /src/api/endpoints/notifications/mark_as_read_all.ts
parenti18n (diff)
downloadmisskey-caa47cb38cfc3950539c78ca2e70f2c50e815d2c.tar.gz
misskey-caa47cb38cfc3950539c78ca2e70f2c50e815d2c.tar.bz2
misskey-caa47cb38cfc3950539c78ca2e70f2c50e815d2c.zip
未読の通知がある場合アイコンを表示するように
Diffstat (limited to 'src/api/endpoints/notifications/mark_as_read_all.ts')
-rw-r--r--src/api/endpoints/notifications/mark_as_read_all.ts32
1 files changed, 32 insertions, 0 deletions
diff --git a/src/api/endpoints/notifications/mark_as_read_all.ts b/src/api/endpoints/notifications/mark_as_read_all.ts
new file mode 100644
index 0000000000..3550e344c4
--- /dev/null
+++ b/src/api/endpoints/notifications/mark_as_read_all.ts
@@ -0,0 +1,32 @@
+/**
+ * Module dependencies
+ */
+import Notification from '../../models/notification';
+import event from '../../event';
+
+/**
+ * Mark as read all notifications
+ *
+ * @param {any} params
+ * @param {any} user
+ * @return {Promise<any>}
+ */
+module.exports = (params, user) => new Promise(async (res, rej) => {
+ // Update documents
+ await Notification.update({
+ notifiee_id: user._id,
+ is_read: false
+ }, {
+ $set: {
+ is_read: true
+ }
+ }, {
+ multi: true
+ });
+
+ // Response
+ res();
+
+ // 全ての通知を読みましたよというイベントを発行
+ event(user._id, 'read_all_notifications');
+});