diff --git a/src/routes/apiRoutes.js b/src/routes/apiRoutes.js index a8e2fb2..b8be963 100644 --- a/src/routes/apiRoutes.js +++ b/src/routes/apiRoutes.js @@ -6,6 +6,7 @@ const InvitedNpub = require('../models/InvitedNpub'); const appInviteServices = require('../services/appInviteServices') +const invitedNpubService = require('../services/invitedNpubService') const router = express.Router(); @@ -54,16 +55,14 @@ router.post('/invited-npub', async (req, res) => { return res.status(404).render('error', { message: 'Invite not found' }); } - if (appInviteServices.isAppInviteSpent(inviteUuid)) { + if (await appInviteServices.isAppInviteSpent(inviteUuid)) { return res.status(410).json({ error: 'Invite has already been used.' }); } - await InvitedNpub.create({ - uuid: uuid.v7(), - app_invite_uuid: inviteUuid, - invited_npub: npub, - created_at: new Date().toISOString() - }); + await invitedNpubService.createInvitedNpub( + inviteUuid, + npub + ); return res.json({ message: "Invited npub successfully." }) diff --git a/src/routes/webRoutes.js b/src/routes/webRoutes.js index 4da261c..24a40a0 100644 --- a/src/routes/webRoutes.js +++ b/src/routes/webRoutes.js @@ -1,8 +1,6 @@ const express = require('express'); const router = express.Router(); -const InvitedNpub = require('../models/InvitedNpub'); - const appInviteServices = require('../services/appInviteServices') router.get('/', (req, res) => { diff --git a/src/services/invitedNpubService.js b/src/services/invitedNpubService.js new file mode 100644 index 0000000..1aa3d28 --- /dev/null +++ b/src/services/invitedNpubService.js @@ -0,0 +1,15 @@ +const uuid = require("uuid"); + +const InvitedNpub = require('../models/InvitedNpub'); + +async function createInvitedNpub(inviteUuid, npub) { + await InvitedNpub.create({ + uuid: uuid.v7(), + app_invite_uuid: inviteUuid, + invited_npub: npub, + created_at: new Date().toISOString() + }); +} + + +exports.createInvitedNpub = createInvitedNpub;