UNPKG

@ministryofjustice/hmpps-digital-prison-reporting-frontend

Version:

The Digital Prison Reporting Frontend contains templates and code to help display data effectively in UI applications.

41 lines (37 loc) 1.33 kB
'use strict'; var utils = require('../../../routes/journeys/my-reports/utils.js'); /** * Unsubscribes a user to a scheduled report * * @param {Request} req * @param {Response} res * @param {Services} services * @return {*} */ const unsubscribe = async (req, res, services) => { const { dprUser } = res.locals; if (!dprUser) { throw new Error('No Dpr User'); } if (!req.body) { throw new Error('No body in request'); } const { token, id: userId } = dprUser; const { reportId, id } = req.params; const { returnTo } = req.body; // Unsubscribe API here const subscriptionData = await services.subscriptionStoreService.getSubscription(reportId, id, userId); if (subscriptionData) { const { reportName, name, type } = subscriptionData; await services.subscriptionService.unsubscribe(token, reportId, id); await utils.removeMyReport('subscriptions', { reportId, id }, services, userId); req.flash('DPR_UNSUBSCRIBED', JSON.stringify({ message: `<p>You have unsubscribed from <strong>${reportName} - ${name}</strong> ${type}</p><p>You will no longer recieve refreshed versions of this report</p>`, })); } return { returnTo, }; }; exports.unsubscribe = unsubscribe; //# sourceMappingURL=utils.js.map