aboutsummaryrefslogtreecommitdiff
path: root/services
diff options
context:
space:
mode:
authoreug-vs <eug-vs@keemail.me>2020-06-23 22:50:59 +0300
committereug-vs <eug-vs@keemail.me>2020-06-23 22:50:59 +0300
commitdbfb0d30f0e5cd44ea188d72ceb05acac2ac40d7 (patch)
tree8372becdf6de9cb0bd98899ec8608eaa3143ff0d /services
parent5255b85532f2e2709b31e891a167c1a250a0aa7e (diff)
downloadwhich-api-dbfb0d30f0e5cd44ea188d72ceb05acac2ac40d7.tar.gz
feat: only allow voting once
Diffstat (limited to 'services')
-rw-r--r--services/votes/votes.class.ts7
1 files changed, 2 insertions, 5 deletions
diff --git a/services/votes/votes.class.ts b/services/votes/votes.class.ts
index 6b9181b..3220ee7 100644
--- a/services/votes/votes.class.ts
+++ b/services/votes/votes.class.ts
@@ -5,11 +5,8 @@ export default class Votes {
async create(data: any, params: any): Promise<PollSchema | null> {
const poll = await PollModel.findById(params.route.id);
if (poll) {
- const which: 'left' | 'right' = data.which;
- const { user } = params;
- poll.contents[which].votes.push(user._id);
- poll.save();
- return poll.toObject();
+ const updatedPoll = await poll.vote(params.user._id, data.which);
+ return updatedPoll.toObject();
}
return null;
}