disable item request notifications

This commit is contained in:
jackiettran
2025-11-20 15:28:16 -05:00
parent 83872fe039
commit 88c831419c
2 changed files with 466 additions and 347 deletions

View File

@@ -395,7 +395,21 @@ router.post('/posts', authenticateToken, uploadForumPostImages, async (req, res)
attributes: ['itemRequestNotificationRadius']
});
const userPreferredRadius = userProfile?.itemRequestNotificationRadius || 10;
const userPreferredRadius = userProfile?.itemRequestNotificationRadius;
// Skip if user has disabled notifications (null)
if (userPreferredRadius === null || userPreferredRadius === undefined) {
logger.info("User has disabled item request notifications", {
postId: post.id,
userId: user.id,
userDistance: user.distance
});
usersSkipped++;
continue;
}
// Default to 10 miles if somehow not set
const effectiveRadius = userPreferredRadius || 10;
logger.info("Checking user notification eligibility", {
postId: post.id,
@@ -404,12 +418,12 @@ router.post('/posts', authenticateToken, uploadForumPostImages, async (req, res)
userCoordinates: { lat: user.latitude, lng: user.longitude },
postCoordinates: { lat: latitude, lng: longitude },
userDistance: user.distance,
userPreferredRadius,
willNotify: parseFloat(user.distance) <= userPreferredRadius
userPreferredRadius: effectiveRadius,
willNotify: parseFloat(user.distance) <= effectiveRadius
});
// Only notify if within user's preferred radius
if (parseFloat(user.distance) <= userPreferredRadius) {
if (parseFloat(user.distance) <= effectiveRadius) {
try {
await emailServices.forum.sendItemRequestNotification(
user,