diff options
Diffstat (limited to 'src/server/api/endpoints')
| -rw-r--r-- | src/server/api/endpoints/notes/polls/vote.ts | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/src/server/api/endpoints/notes/polls/vote.ts b/src/server/api/endpoints/notes/polls/vote.ts index 8de0eb420e..f99fb099c7 100644 --- a/src/server/api/endpoints/notes/polls/vote.ts +++ b/src/server/api/endpoints/notes/polls/vote.ts @@ -6,6 +6,8 @@ import watch from '../../../../../services/note/watch'; import { publishNoteStream } from '../../../../../stream'; import notify from '../../../../../notify'; import define from '../../../define'; +import createNote from '../../../../../services/note/create'; +import User from '../../../../../models/user'; export const meta = { desc: { @@ -114,4 +116,19 @@ export default define(meta, (ps, user) => new Promise(async (res, rej) => { if (user.settings.autoWatch !== false) { watch(user._id, note); } + + // リモート投票の場合リプライ送信 + if (note._user.host != null) { + const pollOwner = await User.findOne({ + _id: note.userId + }); + + createNote(user, { + createdAt: new Date(), + text: ps.choice.toString(), + reply: note, + visibility: 'specified', + visibleUsers: [ pollOwner ], + }); + } })); |