Skip to content

Commit d1e2468

Browse files
author
Berkeley Martinez
committed
Merge pull request freeCodeCamp#7690 from BKinahan/fix/unsubscribe-crash
Handle invalid unsubscriptions
2 parents bed9de2 + 9504a5c commit d1e2468

File tree

1 file changed

+21
-0
lines changed

1 file changed

+21
-0
lines changed

server/boot/randomAPIs.js

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -292,6 +292,13 @@ module.exports = function(app) {
292292
req.checkParams('email', 'Must send a valid email').isEmail();
293293
return User.findOne({ where: { email: req.params.email } }, (err, user) => {
294294
if (err) { return next(err); }
295+
if (!user) {
296+
req.flash('info', {
297+
msg: 'Email address not found. ' +
298+
'Please update your Email preferences from your profile.'
299+
});
300+
return res.redirect('/map');
301+
}
295302
return user.updateAttribute('sendMonthlyEmail', false, (err) => {
296303
if (err) { return next(err); }
297304
req.flash('info', {
@@ -306,6 +313,13 @@ module.exports = function(app) {
306313
req.checkParams('email', 'Must send a valid email').isEmail();
307314
return User.findOne({ where: { email: req.params.email } }, (err, user) => {
308315
if (err) { return next(err); }
316+
if (!user) {
317+
req.flash('info', {
318+
msg: 'Email address not found. ' +
319+
'Please update your Email preferences from your profile.'
320+
});
321+
return res.redirect('/map');
322+
}
309323
return user.updateAttribute('sendNotificationEmail', false, (err) => {
310324
if (err) { return next(err); }
311325
req.flash('info', {
@@ -320,6 +334,13 @@ module.exports = function(app) {
320334
req.checkParams('email', 'Must send a valid email').isEmail();
321335
return User.findOne({ where: { email: req.params.email } }, (err, user) => {
322336
if (err) { return next(err); }
337+
if (!user) {
338+
req.flash('info', {
339+
msg: 'Email address not found. ' +
340+
'Please update your Email preferences from your profile.'
341+
});
342+
return res.redirect('/map');
343+
}
323344
return user.updateAttribute('sendQuincyEmail', false, (err) => {
324345
if (err) { return next(err); }
325346
req.flash('info', {

0 commit comments

Comments
 (0)