diff --git a/src/services/nnid/routes/support.js b/src/services/nnid/routes/support.js index 6cc7a3d..d2a43b2 100644 --- a/src/services/nnid/routes/support.js +++ b/src/services/nnid/routes/support.js @@ -2,6 +2,7 @@ const router = require('express').Router(); const dns = require('dns'); const xmlbuilder = require('xmlbuilder'); const moment = require('moment'); +const util = require('../../../util'); const database = require('../../../database'); /** @@ -86,4 +87,31 @@ router.put('/email_confirmation/:pid/:code', async (request, response) => { response.status(200).send(''); }); +/** + * [GET] + * Replacement for: https://account.nintendo.net/v1/api/support/resend_confirmation + * Description: Resends a users confirmation email + */ +router.get('/resend_confirmation', async (request, response) => { + const pid = request.headers['x-nintendo-pid']; + + const pnid = await database.getUserByPID(pid); + + if (!pnid) { + // TODO - Unsure if this is the right error + return response.status(400).send(xmlbuilder.create({ + errors: { + error: { + code: '0130', + message: 'PID has not been registered yet' + } + } + }).end()); + } + + await util.sendConfirmationEmail(pnid); + + response.status(200).send(''); +}); + module.exports = router; \ No newline at end of file