aboutsummaryrefslogtreecommitdiff
path: root/services/votes
diff options
context:
space:
mode:
Diffstat (limited to 'services/votes')
-rw-r--r--services/votes/votes.hooks.ts15
-rw-r--r--services/votes/votes.service.ts13
2 files changed, 28 insertions, 0 deletions
diff --git a/services/votes/votes.hooks.ts b/services/votes/votes.hooks.ts
new file mode 100644
index 0000000..1cf7261
--- /dev/null
+++ b/services/votes/votes.hooks.ts
@@ -0,0 +1,15 @@
+import { HookContext } from '@feathersjs/feathers';
+import requireAuth from '../../hooks/requireAuth';
+
+const addUserId = async (context: HookContext): Promise<HookContext> => {
+ const { params: { user} } = context;
+ context.data.userId = user._id;
+ return context;
+};
+
+export default {
+ before: {
+ create: [requireAuth, addUserId]
+ }
+};
+
diff --git a/services/votes/votes.service.ts b/services/votes/votes.service.ts
new file mode 100644
index 0000000..cb40c1a
--- /dev/null
+++ b/services/votes/votes.service.ts
@@ -0,0 +1,13 @@
+import { Application } from '@feathersjs/express';
+import service from 'feathers-mongoose';
+import Model from '../../models/votes/vote.model';
+
+import hooks from './votes.hooks';
+
+const VoteService = service({ Model });
+
+export default (app: Application): void => {
+ app.use('/votes', VoteService);
+ app.service('votes').hooks(hooks);
+};
+