summaryrefslogtreecommitdiff
path: root/src/server/api
diff options
context:
space:
mode:
authorMeiMei <30769358+mei23@users.noreply.github.com>2018-09-18 13:08:27 +0900
committersyuilo <Syuilotan@yahoo.co.jp>2018-09-18 13:08:27 +0900
commit11496d887e89ceccd64035f9e1836c5d415f4349 (patch)
tree6c3d3b542a893127b5b0afe1f05627b703838915 /src/server/api
parent8.50.0 (diff)
downloadsharkey-11496d887e89ceccd64035f9e1836c5d415f4349.tar.gz
sharkey-11496d887e89ceccd64035f9e1836c5d415f4349.tar.bz2
sharkey-11496d887e89ceccd64035f9e1836c5d415f4349.zip
Publish pinned notes (#2731)
Diffstat (limited to 'src/server/api')
-rw-r--r--src/server/api/endpoints/i/pin.ts10
1 files changed, 9 insertions, 1 deletions
diff --git a/src/server/api/endpoints/i/pin.ts b/src/server/api/endpoints/i/pin.ts
index 8804d5aa70..ce3b0318a9 100644
--- a/src/server/api/endpoints/i/pin.ts
+++ b/src/server/api/endpoints/i/pin.ts
@@ -2,6 +2,7 @@ import $ from 'cafy'; import ID from '../../../../misc/cafy-id';
import User, { ILocalUser } from '../../../../models/user';
import Note from '../../../../models/note';
import { pack } from '../../../../models/user';
+import { deliverPinnedChange } from '../../../../services/i/pin';
/**
* Pin note
@@ -21,6 +22,9 @@ export default async (params: any, user: ILocalUser) => new Promise(async (res,
return rej('note not found');
}
+ let addedId;
+ let removedId;
+
const pinnedNoteIds = user.pinnedNoteIds || [];
if (pinnedNoteIds.some(id => id.equals(note._id))) {
@@ -28,9 +32,10 @@ export default async (params: any, user: ILocalUser) => new Promise(async (res,
}
pinnedNoteIds.unshift(note._id);
+ addedId = note._id;
if (pinnedNoteIds.length > 5) {
- pinnedNoteIds.pop();
+ removedId = pinnedNoteIds.pop();
}
await User.update(user._id, {
@@ -44,6 +49,9 @@ export default async (params: any, user: ILocalUser) => new Promise(async (res,
detail: true
});
+ // Send Add/Remove to followers
+ deliverPinnedChange(user._id, removedId, addedId);
+
// Send response
res(iObj);
});